metrics

package
v1.2.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 1, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CadenceMetricsPrefix             = "cadence-"
	WorkflowStartCounter             = CadenceMetricsPrefix + "workflow-start"
	WorkflowCompletedCounter         = CadenceMetricsPrefix + "workflow-completed"
	WorkflowCanceledCounter          = CadenceMetricsPrefix + "workflow-canceled"
	WorkflowFailedCounter            = CadenceMetricsPrefix + "workflow-failed"
	WorkflowContinueAsNewCounter     = CadenceMetricsPrefix + "workflow-continue-as-new"
	WorkflowEndToEndLatency          = CadenceMetricsPrefix + "workflow-endtoend-latency" // measure workflow execution from start to close
	WorkflowGetHistoryCounter        = CadenceMetricsPrefix + "workflow-get-history-total"
	WorkflowGetHistoryFailedCounter  = CadenceMetricsPrefix + "workflow-get-history-failed"
	WorkflowGetHistorySucceedCounter = CadenceMetricsPrefix + "workflow-get-history-succeed"
	WorkflowGetHistoryLatency        = CadenceMetricsPrefix + "workflow-get-history-latency"
	WorkflowSignalWithStartCounter   = CadenceMetricsPrefix + "workflow-signal-with-start"
	DecisionTimeoutCounter           = CadenceMetricsPrefix + "decision-timeout"

	DecisionPollCounter                = CadenceMetricsPrefix + "decision-poll-total"
	DecisionPollFailedCounter          = CadenceMetricsPrefix + "decision-poll-failed"
	DecisionPollTransientFailedCounter = CadenceMetricsPrefix + "decision-poll-transient-failed"
	DecisionPollNoTaskCounter          = CadenceMetricsPrefix + "decision-poll-no-task"
	DecisionPollSucceedCounter         = CadenceMetricsPrefix + "decision-poll-succeed"
	DecisionPollLatency                = CadenceMetricsPrefix + "decision-poll-latency" // measure succeed poll request latency
	DecisionPollInvalidCounter         = CadenceMetricsPrefix + "decision-poll-invalid"
	DecisionScheduledToStartLatency    = CadenceMetricsPrefix + "decision-scheduled-to-start-latency"
	DecisionExecutionFailedCounter     = CadenceMetricsPrefix + "decision-execution-failed"
	DecisionExecutionLatency           = CadenceMetricsPrefix + "decision-execution-latency"
	DecisionResponseFailedCounter      = CadenceMetricsPrefix + "decision-response-failed"
	DecisionResponseLatency            = CadenceMetricsPrefix + "decision-response-latency"
	DecisionTaskPanicCounter           = CadenceMetricsPrefix + "decision-task-panic"
	DecisionTaskCompletedCounter       = CadenceMetricsPrefix + "decision-task-completed"
	DecisionTaskForceCompleted         = CadenceMetricsPrefix + "decision-task-force-completed"

	ActivityPollCounter                         = CadenceMetricsPrefix + "activity-poll-total"
	ActivityPollFailedCounter                   = CadenceMetricsPrefix + "activity-poll-failed"
	ActivityPollTransientFailedCounter          = CadenceMetricsPrefix + "activity-poll-transient-failed"
	ActivityPollNoTaskCounter                   = CadenceMetricsPrefix + "activity-poll-no-task"
	ActivityPollSucceedCounter                  = CadenceMetricsPrefix + "activity-poll-succeed"
	ActivityPollLatency                         = CadenceMetricsPrefix + "activity-poll-latency"
	ActivityScheduledToStartLatency             = CadenceMetricsPrefix + "activity-scheduled-to-start-latency"
	ActivityExecutionFailedCounter              = CadenceMetricsPrefix + "activity-execution-failed"
	ActivityExecutionLatency                    = CadenceMetricsPrefix + "activity-execution-latency"
	ActivityResponseLatency                     = CadenceMetricsPrefix + "activity-response-latency"
	ActivityResponseFailedCounter               = CadenceMetricsPrefix + "activity-response-failed"
	ActivityEndToEndLatency                     = CadenceMetricsPrefix + "activity-endtoend-latency"
	ActivityTaskPanicCounter                    = CadenceMetricsPrefix + "activity-task-panic"
	ActivityTaskCompletedCounter                = CadenceMetricsPrefix + "activity-task-completed"
	ActivityTaskFailedCounter                   = CadenceMetricsPrefix + "activity-task-failed"
	ActivityTaskCanceledCounter                 = CadenceMetricsPrefix + "activity-task-canceled"
	ActivityTaskCompletedByIDCounter            = CadenceMetricsPrefix + "activity-task-completed-by-id"
	ActivityTaskFailedByIDCounter               = CadenceMetricsPrefix + "activity-task-failed-by-id"
	ActivityTaskCanceledByIDCounter             = CadenceMetricsPrefix + "activity-task-canceled-by-id"
	LocalActivityTotalCounter                   = CadenceMetricsPrefix + "local-activity-total"
	LocalActivityTimeoutCounter                 = CadenceMetricsPrefix + "local-activity-timeout"
	LocalActivityCanceledCounter                = CadenceMetricsPrefix + "local-activity-canceled"
	LocalActivityFailedCounter                  = CadenceMetricsPrefix + "local-activity-failed"
	LocalActivityPanicCounter                   = CadenceMetricsPrefix + "local-activity-panic"
	LocalActivityExecutionLatency               = CadenceMetricsPrefix + "local-activity-execution-latency"
	LocallyDispatchedActivityPollCounter        = CadenceMetricsPrefix + "locally-dispatched-activity-poll-total"
	LocallyDispatchedActivityPollNoTaskCounter  = CadenceMetricsPrefix + "locally-dispatched-activity-poll-no-task"
	LocallyDispatchedActivityPollSucceedCounter = CadenceMetricsPrefix + "locally-dispatched-activity-poll-succeed"
	ActivityLocalDispatchFailedCounter          = CadenceMetricsPrefix + "activity-local-dispatch-failed"
	ActivityLocalDispatchSucceedCounter         = CadenceMetricsPrefix + "activity-local-dispatch-succeed"
	WorkerPanicCounter                          = CadenceMetricsPrefix + "worker-panic"

	UnhandledSignalsCounter = CadenceMetricsPrefix + "unhandled-signals"
	CorruptedSignalsCounter = CadenceMetricsPrefix + "corrupted-signals"

	WorkerStartCounter = CadenceMetricsPrefix + "worker-start"
	PollerStartCounter = CadenceMetricsPrefix + "poller-start"

	CadenceRequest        = CadenceMetricsPrefix + "request"
	CadenceError          = CadenceMetricsPrefix + "error"
	CadenceLatency        = CadenceMetricsPrefix + "latency"
	CadenceInvalidRequest = CadenceMetricsPrefix + "invalid-request"

	StickyCacheHit   = CadenceMetricsPrefix + "sticky-cache-hit"
	StickyCacheMiss  = CadenceMetricsPrefix + "sticky-cache-miss"
	StickyCacheEvict = CadenceMetricsPrefix + "sticky-cache-evict"
	StickyCacheStall = CadenceMetricsPrefix + "sticky-cache-stall"
	StickyCacheSize  = CadenceMetricsPrefix + "sticky-cache-size"

	NonDeterministicError = CadenceMetricsPrefix + "non-deterministic-error"

	ReplaySucceedCounter = CadenceMetricsPrefix + "replay-succeed"
	ReplayFailedCounter  = CadenceMetricsPrefix + "replay-failed"
	ReplaySkippedCounter = CadenceMetricsPrefix + "replay-skipped"
	ReplayLatency        = CadenceMetricsPrefix + "replay-latency"

	NumCPUCores     = CadenceMetricsPrefix + "num-cpu-cores"
	CPUPercentage   = CadenceMetricsPrefix + "cpu-percentage"
	TotalMemory     = CadenceMetricsPrefix + "total-memory"
	MemoryUsedHeap  = CadenceMetricsPrefix + "memory-used-heap"
	MemoryUsedStack = CadenceMetricsPrefix + "memory-used-stack"
	NumGoRoutines   = CadenceMetricsPrefix + "num-go-routines"

	EstimatedHistorySize     = CadenceMetricsPrefix + "estimated-history-size"
	ServerSideHistorySize    = CadenceMetricsPrefix + "server-side-history-size"
	ConcurrentTaskQuota      = CadenceMetricsPrefix + "concurrent-task-quota"
	PollerRequestBufferUsage = CadenceMetricsPrefix + "poller-request-buffer-usage"
)

Workflow Creation metrics

Variables

This section is empty.

Functions

func NewTaggedMetricsScope added in v0.7.1

func NewTaggedMetricsScope() (*TaggedScope, io.Closer, *CapturingStatsReporter)

NewTaggedMetricsScope return NewTaggedMetricsScope

func NewWorkflowServiceWrapper

func NewWorkflowServiceWrapper(service workflowserviceclient.Interface, scope tally.Scope) workflowserviceclient.Interface

NewWorkflowServiceWrapper creates a new wrapper to WorkflowService that will emit metrics for each service call.

func WrapScope

func WrapScope(isReplay *bool, scope tally.Scope, clock Clock) tally.Scope

WrapScope wraps a scope and skip recording metrics when isReplay is true. This is designed to be used by only by workflowEnvironmentImpl so we suppress metrics while replaying history events. Parameter isReplay is a pointer to workflowEnvironmentImpl.isReplay which will be updated when replaying history events.

Types

type CapturedCount added in v0.7.1

type CapturedCount struct {
	// contains filtered or unexported fields
}

CapturedCount has associated name, tags and value

func (*CapturedCount) Name added in v0.7.1

func (c *CapturedCount) Name() string

Name return the name of CapturedCount

func (*CapturedCount) Tags added in v0.7.1

func (c *CapturedCount) Tags() map[string]string

Tags return CapturedCount tags

func (*CapturedCount) Value added in v0.7.1

func (c *CapturedCount) Value() int64

Value return the value of CapturedCount

type CapturedGauge added in v0.7.1

type CapturedGauge struct {
	// contains filtered or unexported fields
}

CapturedGauge has CapturedGauge name, tag and values

func (*CapturedGauge) Name added in v0.7.1

func (c *CapturedGauge) Name() string

Name return the name of CapturedGauge

func (*CapturedGauge) Tags added in v0.7.1

func (c *CapturedGauge) Tags() map[string]string

Tags return the tags of CapturedGauge

func (*CapturedGauge) Value added in v0.7.1

func (c *CapturedGauge) Value() float64

Value return the value of CapturedGauge

type CapturedHistogramDurationSamples added in v0.7.1

type CapturedHistogramDurationSamples struct {
	// contains filtered or unexported fields
}

CapturedHistogramDurationSamples has related information for CapturedHistogramDurationSamples

type CapturedHistogramValueSamples added in v0.7.1

type CapturedHistogramValueSamples struct {
	// contains filtered or unexported fields
}

CapturedHistogramValueSamples has related information for CapturedHistogramValueSamples

type CapturedTimer added in v0.7.1

type CapturedTimer struct {
	// contains filtered or unexported fields
}

CapturedTimer has related name , tags and value

func (*CapturedTimer) Name added in v0.7.1

func (c *CapturedTimer) Name() string

Name return the name of CapturedTimer

func (*CapturedTimer) Tags added in v0.7.1

func (c *CapturedTimer) Tags() map[string]string

Tags return the tag of CapturedTimer

func (*CapturedTimer) Value added in v0.7.1

func (c *CapturedTimer) Value() time.Duration

Value return the value of CapturedTimer

type CapturingStatsReporter added in v0.7.1

type CapturingStatsReporter struct {
	// contains filtered or unexported fields
}

CapturingStatsReporter is a reporter used by tests to capture the metric so we can verify our tests.

func NewMetricsScope added in v0.7.1

func NewMetricsScope(isReplay *bool) (tally.Scope, io.Closer, *CapturingStatsReporter)

NewMetricsScope returns a new metric scope

func (*CapturingStatsReporter) Capabilities added in v0.7.1

func (c *CapturingStatsReporter) Capabilities() tally.Capabilities

Capabilities return tally.Capabilities

func (*CapturingStatsReporter) Counts added in v0.7.1

func (c *CapturingStatsReporter) Counts() []CapturedCount

Counts return Counts

func (*CapturingStatsReporter) Flush added in v0.7.1

func (c *CapturingStatsReporter) Flush()

Flush will add one to flush

func (*CapturingStatsReporter) Gauges added in v0.7.1

func (c *CapturingStatsReporter) Gauges() []CapturedGauge

Gauges return Gauges

func (*CapturingStatsReporter) HistogramDurationSamples added in v0.7.1

func (c *CapturingStatsReporter) HistogramDurationSamples() []CapturedHistogramDurationSamples

HistogramDurationSamples return HistogramDurationSamples

func (*CapturingStatsReporter) HistogramValueSamples added in v0.7.1

func (c *CapturingStatsReporter) HistogramValueSamples() []CapturedHistogramValueSamples

HistogramValueSamples return HistogramValueSamples

func (*CapturingStatsReporter) ReportCounter added in v0.7.1

func (c *CapturingStatsReporter) ReportCounter(
	name string,
	tags map[string]string,
	value int64,
)

ReportCounter reports the counts

func (*CapturingStatsReporter) ReportGauge added in v0.7.1

func (c *CapturingStatsReporter) ReportGauge(
	name string,
	tags map[string]string,
	value float64,
)

ReportGauge reports the gauges

func (*CapturingStatsReporter) ReportHistogramDurationSamples added in v0.7.1

func (c *CapturingStatsReporter) ReportHistogramDurationSamples(
	name string,
	tags map[string]string,
	buckets tally.Buckets,
	bucketLowerBound,
	bucketUpperBound time.Duration,
	samples int64,
)

ReportHistogramDurationSamples reports ReportHistogramDurationSamples

func (*CapturingStatsReporter) ReportHistogramValueSamples added in v0.7.1

func (c *CapturingStatsReporter) ReportHistogramValueSamples(
	name string,
	tags map[string]string,
	buckets tally.Buckets,
	bucketLowerBound,
	bucketUpperBound float64,
	samples int64,
)

ReportHistogramValueSamples reports histogramValueSamples

func (*CapturingStatsReporter) ReportTimer added in v0.7.1

func (c *CapturingStatsReporter) ReportTimer(
	name string,
	tags map[string]string,
	value time.Duration,
)

ReportTimer reports timers

func (*CapturingStatsReporter) Reporting added in v0.7.1

func (c *CapturingStatsReporter) Reporting() bool

Reporting will always return true

func (*CapturingStatsReporter) Tagging added in v0.7.1

func (c *CapturingStatsReporter) Tagging() bool

Tagging will always return true

func (*CapturingStatsReporter) Timers added in v0.7.1

func (c *CapturingStatsReporter) Timers() []CapturedTimer

Timers return Timers

type Clock

type Clock interface {
	Now() time.Time
}

Clock defines interface used as time source

type TaggedScope added in v0.6.1

type TaggedScope struct {
	tally.Scope
	*sync.Map
}

TaggedScope provides metricScope with tags

func NewTaggedScope added in v0.6.1

func NewTaggedScope(scope tally.Scope) *TaggedScope

NewTaggedScope create a new TaggedScope

func (*TaggedScope) GetTaggedScope added in v0.6.1

func (ts *TaggedScope) GetTaggedScope(keyValueinPairs ...string) tally.Scope

GetTaggedScope return a scope with one or multiple tags, input should be key value pairs like: GetTaggedScope(tag1, val1, tag2, val2).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL