Documentation ¶
Index ¶
- Constants
- Variables
- type Client
- type ClientImpl
- func (m *ClientImpl) AddCounter(scopeIdx int, counterIdx int, delta int64)
- func (m *ClientImpl) IncCounter(scopeIdx int, counterIdx int)
- func (m *ClientImpl) RecordTimer(scopeIdx int, timerIdx int, d time.Duration)
- func (m *ClientImpl) StartTimer(scopeIdx int, timerIdx int) tally.Stopwatch
- func (m *ClientImpl) Tagged(tags map[string]string) Client
- func (m *ClientImpl) UpdateGauge(scopeIdx int, gaugeIdx int, delta float64)
- type ErrorClass
- type MetricName
- type MetricType
- type RuntimeMetricsReporter
- type ServiceIdx
Constants ¶
const ( Common = iota Frontend History Matching NumServices )
Service names for all services that emit metrics.
const ( HostnameTagName = "hostname" OperationTagName = "operation" // ShardTagName is temporary until we can get all metric data removed for the service ShardTagName = "shard" )
Common tags for all services
const ( UnknownDirectoryTagValue = "Unknown" AllShardsTagValue = "ALL" NoneShardsTagValue = "NONE" )
This package should hold all the metrics and tags for cadence
const ( RestartCount = "restarts" NumGoRoutinesGauge = "num-goroutines" GoMaxProcsGauge = "gomaxprocs" MemoryAllocatedGauge = "memory.allocated" MemoryHeapGauge = "memory.heap" MemoryHeapIdleGauge = "memory.heapidle" MemoryHeapInuseGauge = "memory.heapinuse" MemoryStackGauge = "memory.stack" NumGCCounter = "memory.num-gc" GcPauseMsTimer = "memory.gc-pause-ms" )
Common service base metrics
const ( // PersistenceCreateShardScope tracks CreateShard calls made by service to persistence layer PersistenceCreateShardScope = iota // PersistenceGetShardScope tracks GetShard calls made by service to persistence layer PersistenceGetShardScope // PersistenceUpdateShardScope tracks UpdateShard calls made by service to persistence layer PersistenceUpdateShardScope // PersistenceCreateWorkflowExecutionScope tracks CreateWorkflowExecution calls made by service to persistence layer PersistenceCreateWorkflowExecutionScope // PersistenceGetWorkflowExecutionScope tracks GetWorkflowExecution calls made by service to persistence layer PersistenceGetWorkflowExecutionScope // PersistenceUpdateWorkflowExecutionScope tracks UpdateWorkflowExecution calls made by service to persistence layer PersistenceUpdateWorkflowExecutionScope // PersistenceDeleteWorkflowExecutionScope tracks DeleteWorkflowExecution calls made by service to persistence layer PersistenceDeleteWorkflowExecutionScope // PersistenceGetCurrentExecutionScope tracks GetCurrentExecution calls made by service to persistence layer PersistenceGetCurrentExecutionScope // PersistenceGetTransferTasksScope tracks GetTransferTasks calls made by service to persistence layer PersistenceGetTransferTasksScope // PersistenceCompleteTransferTaskScope tracks CompleteTransferTasks calls made by service to persistence layer PersistenceCompleteTransferTaskScope // PersistenceGetTimerIndexTasksScope tracks GetTimerIndexTasks calls made by service to persistence layer PersistenceGetTimerIndexTasksScope // PersistenceCompleteTimerTaskScope tracks CompleteTimerTasks calls made by service to persistence layer PersistenceCompleteTimerTaskScope // PersistenceCreateTaskScope tracks CreateTask calls made by service to persistence layer PersistenceCreateTaskScope // PersistenceGetTasksScope tracks GetTasks calls made by service to persistence layer PersistenceGetTasksScope // PersistenceCompleteTaskScope tracks CompleteTask calls made by service to persistence layer PersistenceCompleteTaskScope // PersistenceLeaseTaskListScope tracks LeaseTaskList calls made by service to persistence layer PersistenceLeaseTaskListScope // PersistenceUpdateTaskListScope tracks PersistenceUpdateTaskListScope calls made by service to persistence layer PersistenceUpdateTaskListScope // PersistenceAppendHistoryEventsScope tracks AppendHistoryEvents calls made by service to persistence layer PersistenceAppendHistoryEventsScope // PersistenceGetWorkflowExecutionHistoryScope tracks GetWorkflowExecutionHistory calls made by service to persistence layer PersistenceGetWorkflowExecutionHistoryScope // PersistenceDeleteWorkflowExecutionHistoryScope tracks DeleteWorkflowExecutionHistory calls made by service to persistence layer PersistenceDeleteWorkflowExecutionHistoryScope // PersistenceCreateDomainScope tracks CreateDomain calls made by service to persistence layer PersistenceCreateDomainScope // PersistenceGetDomainScope tracks GetDomain calls made by service to persistence layer PersistenceGetDomainScope // PersistenceUpdateDomainScope tracks UpdateDomain calls made by service to persistence layer PersistenceUpdateDomainScope // PersistenceDeleteDomainScope tracks DeleteDomain calls made by service to persistence layer PersistenceDeleteDomainScope // PersistenceDeleteDomainByNameScope tracks DeleteDomainByName calls made by service to persistence layer PersistenceDeleteDomainByNameScope // HistoryClientStartWorkflowExecutionScope tracks RPC calls to history service HistoryClientStartWorkflowExecutionScope // HistoryClientRecordActivityTaskHeartbeatScope tracks RPC calls to history service HistoryClientRecordActivityTaskHeartbeatScope // HistoryClientRespondDecisionTaskCompletedScope tracks RPC calls to history service HistoryClientRespondDecisionTaskCompletedScope // HistoryClientRespondActivityTaskCompletedScope tracks RPC calls to history service HistoryClientRespondActivityTaskCompletedScope // HistoryClientRespondActivityTaskFailedScope tracks RPC calls to history service HistoryClientRespondActivityTaskFailedScope // HistoryClientRespondActivityTaskCanceledScope tracks RPC calls to history service HistoryClientRespondActivityTaskCanceledScope // HistoryClientGetWorkflowExecutionNextEventIDScope tracks RPC calls to history service HistoryClientGetWorkflowExecutionNextEventIDScope // HistoryClientRecordDecisionTaskStartedScope tracks RPC calls to history service HistoryClientRecordDecisionTaskStartedScope // HistoryClientRecordActivityTaskStartedScope tracks RPC calls to history service HistoryClientRecordActivityTaskStartedScope // HistoryClientRequestCancelWorkflowExecutionScope tracks RPC calls to history service HistoryClientRequestCancelWorkflowExecutionScope // HistoryClientSignalWorkflowExecutionScope tracks RPC calls to history service HistoryClientSignalWorkflowExecutionScope // HistoryClientTerminateWorkflowExecutionScope tracks RPC calls to history service HistoryClientTerminateWorkflowExecutionScope // HistoryClientScheduleDecisionTaskScope tracks RPC calls to history service HistoryClientScheduleDecisionTaskScope // HistoryClientRecordChildExecutionCompletedScope tracks RPC calls to history service HistoryClientRecordChildExecutionCompletedScope // MatchingClientPollForDecisionTaskScope tracks RPC calls to matching service MatchingClientPollForDecisionTaskScope // MatchingClientPollForActivityTaskScope tracks RPC calls to matching service MatchingClientPollForActivityTaskScope // MatchingClientAddActivityTaskScope tracks RPC calls to matching service MatchingClientAddActivityTaskScope // MatchingClientAddDecisionTaskScope tracks RPC calls to matching service MatchingClientAddDecisionTaskScope NumCommonScopes )
Scopes enum
const ( // FrontendStartWorkflowExecutionScope is the metric scope for frontend.StartWorkflowExecution FrontendStartWorkflowExecutionScope = iota + NumCommonScopes // PollForDecisionTaskScope is the metric scope for frontend.PollForDecisionTask FrontendPollForDecisionTaskScope // FrontendPollForActivityTaskScope is the metric scope for frontend.PollForActivityTask FrontendPollForActivityTaskScope // FrontendRecordActivityTaskHeartbeatScope is the metric scope for frontend.RecordActivityTaskHeartbeat FrontendRecordActivityTaskHeartbeatScope // FrontendRespondDecisionTaskCompletedScope is the metric scope for frontend.RespondDecisionTaskCompleted FrontendRespondDecisionTaskCompletedScope // FrontendRespondActivityTaskCompletedScope is the metric scope for frontend.RespondActivityTaskCompleted FrontendRespondActivityTaskCompletedScope // FrontendRespondActivityTaskFailedScope is the metric scope for frontend.RespondActivityTaskFailed FrontendRespondActivityTaskFailedScope // FrontendRespondActivityTaskCanceledScope is the metric scope for frontend.RespondActivityTaskCanceled FrontendRespondActivityTaskCanceledScope // FrontendGetWorkflowExecutionHistoryScope is the metric scope for frontend.GetWorkflowExecutionHistory FrontendGetWorkflowExecutionHistoryScope // FrontendSignalWorkflowExecutionScope is the metric scope for frontend.SignalWorkflowExecution FrontendSignalWorkflowExecutionScope // FrontendTerminateWorkflowExecutionScope is the metric scope for frontend.TerminateWorkflowExecution FrontendTerminateWorkflowExecutionScope // FrontendRequestCancelWorkflowExecutionScope is the metric scope for frontend.RequestCancelWorkflowExecution FrontendRequestCancelWorkflowExecutionScope // FrontendListOpenWorkflowExecutionsScope is the metric scope for frontend.ListOpenWorkflowExecutions FrontendListOpenWorkflowExecutionsScope // FrontendListClosedWorkflowExecutionsScope is the metric scope for frontend.ListClosedWorkflowExecutions FrontendListClosedWorkflowExecutionsScope // FrontendRegisterDomainScope is the metric scope for frontend.RegisterDomain FrontendRegisterDomainScope // FrontendDescribeDomainScope is the metric scope for frontend.DescribeDomain FrontendDescribeDomainScope // FrontendUpdateDomainScope is the metric scope for frontend.DescribeDomain FrontendUpdateDomainScope // FrontendDeprecateDomainScope is the metric scope for frontend.DeprecateDomain FrontendDeprecateDomainScope NumFrontendScopes )
-- Operation scopes for Frontend service --
const ( // HistoryStartWorkflowExecutionScope tracks StartWorkflowExecution API calls received by service HistoryStartWorkflowExecutionScope = iota + NumCommonScopes // HistoryRecordActivityTaskHeartbeatScope tracks RecordActivityTaskHeartbeat API calls received by service HistoryRecordActivityTaskHeartbeatScope // HistoryRespondDecisionTaskCompletedScope tracks RespondDecisionTaskCompleted API calls received by service HistoryRespondDecisionTaskCompletedScope // HistoryRespondActivityTaskCompletedScope tracks RespondActivityTaskCompleted API calls received by service HistoryRespondActivityTaskCompletedScope // HistoryRespondActivityTaskFailedScope tracks RespondActivityTaskFailed API calls received by service HistoryRespondActivityTaskFailedScope // HistoryRespondActivityTaskCanceledScope tracks RespondActivityTaskCanceled API calls received by service HistoryRespondActivityTaskCanceledScope // HistoryGetWorkflowExecutionNextEventIDScope tracks GetWorkflowExecutionHistory API calls received by service HistoryGetWorkflowExecutionNextEventIDScope // HistoryRecordDecisionTaskStartedScope tracks RecordDecisionTaskStarted API calls received by service HistoryRecordDecisionTaskStartedScope // HistoryRecordActivityTaskStartedScope tracks RecordActivityTaskStarted API calls received by service HistoryRecordActivityTaskStartedScope // HistorySignalWorkflowExecutionScope tracks SignalWorkflowExecution API calls received by service HistorySignalWorkflowExecutionScope // HistoryTerminateWorkflowExecutionScope tracks TerminateWorkflowExecution API calls received by service HistoryTerminateWorkflowExecutionScope // HistoryScheduleDecisionTaskScope tracks ScheduleDecisionTask API calls received by service HistoryScheduleDecisionTaskScope // HistoryRecordChildExecutionCompletedScope tracks CompleteChildExecution API calls received by service HistoryRecordChildExecutionCompletedScope // HistoryRequestCancelWorkflowExecutionScope tracks RequestCancelWorkflowExecution API calls received by service HistoryRequestCancelWorkflowExecutionScope // TransferQueueProcessorScope is the scope used by all metric emitted by transfer queue processor TransferQueueProcessorScope // TransferTaskActivityScope is the scope used for activity task processing by transfer queue processor TransferTaskActivityScope // TransferTaskDecisionScope is the scope used for decision task processing by transfer queue processor TransferTaskDecisionScope // TransferTaskDeleteExecutionScope is the scope used for delete execution task processing by transfer queue processor TransferTaskDeleteExecutionScope // TransferTaskCancelExecutionScope is the scope used for cancel execution task processing by transfer queue processor TransferTaskCancelExecutionScope // TransferTaskStartChildExecutionScope is the scope used for start child execution task processing by transfer queue processor TransferTaskStartChildExecutionScope // TimerQueueProcessorScope is the scope used by all metric emitted by timer queue processor TimerQueueProcessorScope // TimerTaskActivityTimeoutScope is the scope used by metric emitted by timer queue processor for processing activity timeouts TimerTaskActivityTimeoutScope // TimerTaskDecisionTimeoutScope is the scope used by metric emitted by timer queue processor for processing decision timeouts TimerTaskDecisionTimeoutScope // TimerTaskUserTimerScope is the scope used by metric emitted by timer queue processor for processing user timers TimerTaskUserTimerScope // TimerTaskWorkflowTimeoutScope is the scope used by metric emitted by timer queue processor for processing workflow timeouts. TimerTaskWorkflowTimeoutScope // TimerTaskDeleteHistoryEvent is the scope used by metric emitted by timer queue processor for processing history event cleanup TimerTaskDeleteHistoryEvent NumHistoryScopes )
-- Operation scopes for History service --
const ( // PollForDecisionTaskScope tracks PollForDecisionTask API calls received by service MatchingPollForDecisionTaskScope = iota + NumCommonScopes // PollForActivityTaskScope tracks PollForActivityTask API calls received by service MatchingPollForActivityTaskScope // MatchingAddActivityTaskScope tracks AddActivityTask API calls received by service MatchingAddActivityTaskScope // MatchingAddDecisionTaskScope tracks AddDecisionTask API calls received by service MatchingAddDecisionTaskScope // MatchingTaskListMgrScope is the metrics scope for matching.TaskListManager component MatchingTaskListMgrScope NumMatchingScopes )
-- Operation scopes for Matching service --
const ( CadenceRequests = iota CadenceFailures CadenceLatency CadenceErrBadRequestCounter CadenceErrServiceBusyCounter CadenceErrEntityNotExistsCounter CadenceErrExecutionAlreadyStartedCounter CadenceErrDomainAlreadyExistsCounter CadenceErrCancellationAlreadyRequestedCounter PersistenceRequests PersistenceFailures PersistenceLatency PersistenceErrShardExistsCounter PersistenceErrShardOwnershipLostCounter PersistenceErrConditionFailedCounter PersistenceErrTimeoutCounter NumCommonMetrics )
Common Metrics enum
const ( TaskRequests = iota + NumCommonMetrics TaskFailures TaskLatency AckLevelUpdateCounter AckLevelUpdateFailedCounter DecisionTypeScheduleActivityCounter DecisionTypeCompleteWorkflowCounter DecisionTypeFailWorkflowCounter DecisionTypeCancelWorkflowCounter DecisionTypeStartTimerCounter DecisionTypeCancelActivityCounter DecisionTypeCancelTimerCounter DecisionTypeRecordMarkerCounter DecisionTypeCancelExternalWorkflowCounter DecisionTypeChildWorkflowCounter DecisionTypeContinueAsNewCounter MultipleCompletionDecisionsCounter FailedDecisionsCounter StaleMutableStateCounter ConcurrencyUpdateFailureCounter CadenceErrEventAlreadyStartedCounter CadenceErrShardOwnershipLostCounter HeartbeatTimeoutCounter ScheduleToStartTimeoutCounter StartToCloseTimeoutCounter ScheduleToCloseTimeoutCounter NewTimerCounter NewTimerNotifyCounter )
History Metrics enum
const ( PollSuccessCounter = iota + NumCommonMetrics PollTimeoutCounter PollErrorsCounter PollSuccessWithSyncCounter LeaseRequestCounter LeaseFailureCounter ConditionFailedErrorCounter )
Matching metrics enum
const ( // NoError indicates that there is no error (error should be nil) NoError = ErrorClass(iota) // UserError indicates that this is NOT an SLA-reportable error UserError // InternalError indicates that this is an SLA-reportable error InternalError )
Variables ¶
var GoRuntimeMetrics = map[MetricName]MetricType{ NumGoRoutinesGauge: Gauge, GoMaxProcsGauge: Gauge, MemoryAllocatedGauge: Gauge, MemoryHeapGauge: Gauge, MemoryHeapIdleGauge: Gauge, MemoryHeapInuseGauge: Gauge, MemoryStackGauge: Gauge, NumGCCounter: Counter, GcPauseMsTimer: Timer, }
GoRuntimeMetrics represent the runtime stats from go runtime
var MetricDefs = map[ServiceIdx]map[int]metricDefinition{ Common: { CadenceRequests: {/* contains filtered or unexported fields */}, CadenceFailures: {/* contains filtered or unexported fields */}, CadenceLatency: {/* contains filtered or unexported fields */}, CadenceErrBadRequestCounter: {/* contains filtered or unexported fields */}, CadenceErrServiceBusyCounter: {/* contains filtered or unexported fields */}, CadenceErrEntityNotExistsCounter: {/* contains filtered or unexported fields */}, CadenceErrExecutionAlreadyStartedCounter: {/* contains filtered or unexported fields */}, CadenceErrDomainAlreadyExistsCounter: {/* contains filtered or unexported fields */}, CadenceErrCancellationAlreadyRequestedCounter: {/* contains filtered or unexported fields */}, PersistenceRequests: {/* contains filtered or unexported fields */}, PersistenceFailures: {/* contains filtered or unexported fields */}, PersistenceLatency: {/* contains filtered or unexported fields */}, PersistenceErrShardExistsCounter: {/* contains filtered or unexported fields */}, PersistenceErrShardOwnershipLostCounter: {/* contains filtered or unexported fields */}, PersistenceErrConditionFailedCounter: {/* contains filtered or unexported fields */}, PersistenceErrTimeoutCounter: {/* contains filtered or unexported fields */}, }, Frontend: {}, History: { TaskRequests: {/* contains filtered or unexported fields */}, TaskFailures: {/* contains filtered or unexported fields */}, TaskLatency: {/* contains filtered or unexported fields */}, AckLevelUpdateCounter: {/* contains filtered or unexported fields */}, AckLevelUpdateFailedCounter: {/* contains filtered or unexported fields */}, DecisionTypeScheduleActivityCounter: {/* contains filtered or unexported fields */}, DecisionTypeCompleteWorkflowCounter: {/* contains filtered or unexported fields */}, DecisionTypeFailWorkflowCounter: {/* contains filtered or unexported fields */}, DecisionTypeCancelWorkflowCounter: {/* contains filtered or unexported fields */}, DecisionTypeStartTimerCounter: {/* contains filtered or unexported fields */}, DecisionTypeCancelActivityCounter: {/* contains filtered or unexported fields */}, DecisionTypeCancelTimerCounter: {/* contains filtered or unexported fields */}, DecisionTypeRecordMarkerCounter: {/* contains filtered or unexported fields */}, DecisionTypeCancelExternalWorkflowCounter: {/* contains filtered or unexported fields */}, DecisionTypeContinueAsNewCounter: {/* contains filtered or unexported fields */}, DecisionTypeChildWorkflowCounter: {/* contains filtered or unexported fields */}, MultipleCompletionDecisionsCounter: {/* contains filtered or unexported fields */}, FailedDecisionsCounter: {/* contains filtered or unexported fields */}, StaleMutableStateCounter: {/* contains filtered or unexported fields */}, ConcurrencyUpdateFailureCounter: {/* contains filtered or unexported fields */}, CadenceErrShardOwnershipLostCounter: {/* contains filtered or unexported fields */}, CadenceErrEventAlreadyStartedCounter: {/* contains filtered or unexported fields */}, HeartbeatTimeoutCounter: {/* contains filtered or unexported fields */}, ScheduleToStartTimeoutCounter: {/* contains filtered or unexported fields */}, StartToCloseTimeoutCounter: {/* contains filtered or unexported fields */}, ScheduleToCloseTimeoutCounter: {/* contains filtered or unexported fields */}, NewTimerCounter: {/* contains filtered or unexported fields */}, NewTimerNotifyCounter: {/* contains filtered or unexported fields */}, }, Matching: { PollSuccessCounter: {/* contains filtered or unexported fields */}, PollTimeoutCounter: {/* contains filtered or unexported fields */}, PollErrorsCounter: {/* contains filtered or unexported fields */}, PollSuccessWithSyncCounter: {/* contains filtered or unexported fields */}, LeaseRequestCounter: {/* contains filtered or unexported fields */}, LeaseFailureCounter: {/* contains filtered or unexported fields */}, ConditionFailedErrorCounter: {/* contains filtered or unexported fields */}, }, }
MetricDefs record the metrics for all services
var ScopeDefs = map[ServiceIdx]map[int]scopeDefinition{ Common: { PersistenceCreateShardScope: {/* contains filtered or unexported fields */}, PersistenceGetShardScope: {/* contains filtered or unexported fields */}, PersistenceUpdateShardScope: {/* contains filtered or unexported fields */}, PersistenceCreateWorkflowExecutionScope: {/* contains filtered or unexported fields */}, PersistenceGetWorkflowExecutionScope: {/* contains filtered or unexported fields */}, PersistenceUpdateWorkflowExecutionScope: {/* contains filtered or unexported fields */}, PersistenceDeleteWorkflowExecutionScope: {/* contains filtered or unexported fields */}, PersistenceGetCurrentExecutionScope: {/* contains filtered or unexported fields */}, PersistenceGetTransferTasksScope: {/* contains filtered or unexported fields */}, PersistenceCompleteTransferTaskScope: {/* contains filtered or unexported fields */}, PersistenceGetTimerIndexTasksScope: {/* contains filtered or unexported fields */}, PersistenceCompleteTimerTaskScope: {/* contains filtered or unexported fields */}, PersistenceCreateTaskScope: {/* contains filtered or unexported fields */}, PersistenceGetTasksScope: {/* contains filtered or unexported fields */}, PersistenceCompleteTaskScope: {/* contains filtered or unexported fields */}, PersistenceLeaseTaskListScope: {/* contains filtered or unexported fields */}, PersistenceUpdateTaskListScope: {/* contains filtered or unexported fields */}, PersistenceAppendHistoryEventsScope: {/* contains filtered or unexported fields */}, PersistenceGetWorkflowExecutionHistoryScope: {/* contains filtered or unexported fields */}, PersistenceDeleteWorkflowExecutionHistoryScope: {/* contains filtered or unexported fields */}, PersistenceCreateDomainScope: {/* contains filtered or unexported fields */}, PersistenceGetDomainScope: {/* contains filtered or unexported fields */}, PersistenceUpdateDomainScope: {/* contains filtered or unexported fields */}, PersistenceDeleteDomainScope: {/* contains filtered or unexported fields */}, PersistenceDeleteDomainByNameScope: {/* contains filtered or unexported fields */}, HistoryClientStartWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryClientRecordActivityTaskHeartbeatScope: {/* contains filtered or unexported fields */}, HistoryClientRespondDecisionTaskCompletedScope: {/* contains filtered or unexported fields */}, HistoryClientRespondActivityTaskCompletedScope: {/* contains filtered or unexported fields */}, HistoryClientRespondActivityTaskFailedScope: {/* contains filtered or unexported fields */}, HistoryClientRespondActivityTaskCanceledScope: {/* contains filtered or unexported fields */}, HistoryClientGetWorkflowExecutionNextEventIDScope: {/* contains filtered or unexported fields */}, HistoryClientRecordDecisionTaskStartedScope: {/* contains filtered or unexported fields */}, HistoryClientRecordActivityTaskStartedScope: {/* contains filtered or unexported fields */}, HistoryClientRequestCancelWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryClientSignalWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryClientTerminateWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryClientScheduleDecisionTaskScope: {/* contains filtered or unexported fields */}, HistoryClientRecordChildExecutionCompletedScope: {/* contains filtered or unexported fields */}, MatchingClientPollForDecisionTaskScope: {/* contains filtered or unexported fields */}, MatchingClientPollForActivityTaskScope: {/* contains filtered or unexported fields */}, MatchingClientAddActivityTaskScope: {/* contains filtered or unexported fields */}, MatchingClientAddDecisionTaskScope: {/* contains filtered or unexported fields */}, }, Frontend: { FrontendStartWorkflowExecutionScope: {/* contains filtered or unexported fields */}, FrontendPollForDecisionTaskScope: {/* contains filtered or unexported fields */}, FrontendPollForActivityTaskScope: {/* contains filtered or unexported fields */}, FrontendRecordActivityTaskHeartbeatScope: {/* contains filtered or unexported fields */}, FrontendRespondDecisionTaskCompletedScope: {/* contains filtered or unexported fields */}, FrontendRespondActivityTaskCompletedScope: {/* contains filtered or unexported fields */}, FrontendRespondActivityTaskFailedScope: {/* contains filtered or unexported fields */}, FrontendRespondActivityTaskCanceledScope: {/* contains filtered or unexported fields */}, FrontendGetWorkflowExecutionHistoryScope: {/* contains filtered or unexported fields */}, FrontendSignalWorkflowExecutionScope: {/* contains filtered or unexported fields */}, FrontendTerminateWorkflowExecutionScope: {/* contains filtered or unexported fields */}, FrontendRequestCancelWorkflowExecutionScope: {/* contains filtered or unexported fields */}, FrontendListOpenWorkflowExecutionsScope: {/* contains filtered or unexported fields */}, FrontendListClosedWorkflowExecutionsScope: {/* contains filtered or unexported fields */}, FrontendRegisterDomainScope: {/* contains filtered or unexported fields */}, FrontendDescribeDomainScope: {/* contains filtered or unexported fields */}, FrontendUpdateDomainScope: {/* contains filtered or unexported fields */}, FrontendDeprecateDomainScope: {/* contains filtered or unexported fields */}, }, History: { HistoryStartWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryRecordActivityTaskHeartbeatScope: {/* contains filtered or unexported fields */}, HistoryRespondDecisionTaskCompletedScope: {/* contains filtered or unexported fields */}, HistoryRespondActivityTaskCompletedScope: {/* contains filtered or unexported fields */}, HistoryRespondActivityTaskFailedScope: {/* contains filtered or unexported fields */}, HistoryRespondActivityTaskCanceledScope: {/* contains filtered or unexported fields */}, HistoryGetWorkflowExecutionNextEventIDScope: {/* contains filtered or unexported fields */}, HistoryRecordDecisionTaskStartedScope: {/* contains filtered or unexported fields */}, HistoryRecordActivityTaskStartedScope: {/* contains filtered or unexported fields */}, HistorySignalWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryTerminateWorkflowExecutionScope: {/* contains filtered or unexported fields */}, HistoryScheduleDecisionTaskScope: {/* contains filtered or unexported fields */}, HistoryRecordChildExecutionCompletedScope: {/* contains filtered or unexported fields */}, HistoryRequestCancelWorkflowExecutionScope: {/* contains filtered or unexported fields */}, TransferQueueProcessorScope: {/* contains filtered or unexported fields */}, TransferTaskActivityScope: {/* contains filtered or unexported fields */}, TransferTaskDecisionScope: {/* contains filtered or unexported fields */}, TransferTaskDeleteExecutionScope: {/* contains filtered or unexported fields */}, TransferTaskCancelExecutionScope: {/* contains filtered or unexported fields */}, TransferTaskStartChildExecutionScope: {/* contains filtered or unexported fields */}, TimerQueueProcessorScope: {/* contains filtered or unexported fields */}, TimerTaskActivityTimeoutScope: {/* contains filtered or unexported fields */}, TimerTaskDecisionTimeoutScope: {/* contains filtered or unexported fields */}, TimerTaskUserTimerScope: {/* contains filtered or unexported fields */}, TimerTaskWorkflowTimeoutScope: {/* contains filtered or unexported fields */}, TimerTaskDeleteHistoryEvent: {/* contains filtered or unexported fields */}, }, Matching: { MatchingPollForDecisionTaskScope: {/* contains filtered or unexported fields */}, MatchingPollForActivityTaskScope: {/* contains filtered or unexported fields */}, MatchingAddActivityTaskScope: {/* contains filtered or unexported fields */}, MatchingAddDecisionTaskScope: {/* contains filtered or unexported fields */}, MatchingTaskListMgrScope: {/* contains filtered or unexported fields */}, }, }
ScopeDefs record the scopes for all services
var ServiceMetrics = map[MetricName]MetricType{ RestartCount: Counter, }
ServiceMetrics are types for common service base metrics
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client interface { // IncCounter increments a counter metric IncCounter(scope int, counter int) // AddCounter adds delta to the counter metric AddCounter(scope int, counter int, delta int64) // StartTimer starts a timer for the given // metric name. Time will be recorded when stopwatch is stopped. StartTimer(scope int, timer int) tally.Stopwatch // RecordTimer starts a timer for the given // metric name RecordTimer(scope int, timer int, d time.Duration) // UpdateGauge reports Gauge type metric UpdateGauge(scope int, gauge int, delta float64) // Tagged returns a client that adds the given tags to all metrics Tagged(tags map[string]string) Client }
Client is the interface used to report metrics tally.
type ClientImpl ¶
type ClientImpl struct {
// contains filtered or unexported fields
}
ClientImpl is used for reporting metrics by various Cadence services
func (*ClientImpl) AddCounter ¶
func (m *ClientImpl) AddCounter(scopeIdx int, counterIdx int, delta int64)
AddCounter adds delta to the counter and emits to the metrics backend
func (*ClientImpl) IncCounter ¶
func (m *ClientImpl) IncCounter(scopeIdx int, counterIdx int)
IncCounter increments one for a counter and emits to metrics backend
func (*ClientImpl) RecordTimer ¶
func (m *ClientImpl) RecordTimer(scopeIdx int, timerIdx int, d time.Duration)
RecordTimer record and emit a timer for the given metric name
func (*ClientImpl) StartTimer ¶
func (m *ClientImpl) StartTimer(scopeIdx int, timerIdx int) tally.Stopwatch
StartTimer starts a timer for the given metric name
func (*ClientImpl) Tagged ¶
func (m *ClientImpl) Tagged(tags map[string]string) Client
Tagged returns a client that adds the given tags to all metrics
func (*ClientImpl) UpdateGauge ¶
func (m *ClientImpl) UpdateGauge(scopeIdx int, gaugeIdx int, delta float64)
UpdateGauge reports Gauge type metric
type ErrorClass ¶
type ErrorClass uint8
ErrorClass is an enum to help with classifying SLA vs. non-SLA errors (SLA = "service level agreement")
type MetricType ¶
type MetricType int
MetricType is the type of the metric
const ( Counter MetricType = iota Timer Gauge )
MetricTypes which are supported
type RuntimeMetricsReporter ¶
type RuntimeMetricsReporter struct {
// contains filtered or unexported fields
}
RuntimeMetricsReporter A struct containing the state of the RuntimeMetricsReporter.
func NewRuntimeMetricsReporter ¶
func NewRuntimeMetricsReporter(scope tally.Scope, reportInterval time.Duration, logger bark.Logger) *RuntimeMetricsReporter
NewRuntimeMetricsReporter Creates a new RuntimeMetricsReporter.
func (*RuntimeMetricsReporter) Start ¶
func (r *RuntimeMetricsReporter) Start()
Start Starts the reporter thread that periodically emits metrics.
func (*RuntimeMetricsReporter) Stop ¶
func (r *RuntimeMetricsReporter) Stop()
Stop Stops reporting of runtime metrics. The reporter cannot be started again after it's been stopped.