205
206
// RecordCommandMetrics records per-command metrics with the given outcome.
207
>
func RecordCommandMetrics(commands []*workerpb.WorkerCommand, metricsHandler metrics.Handler, namespaceName string, outcome string) {
dispatcher.go
208
>
for _, cmd := range commands {
209
>
metrics.WorkerCommandsSent.With(metricsHandler).Record(
210
>
1,
211
>
metrics.NamespaceTag(namespaceName),
212
>
metrics.OutcomeTag(outcome),
213
>
metrics.StringTag("command_type", CommandTypeName(cmd)),
214
>
)
215
>
}
216
}
217
218
>
func CommandTypeName(cmd *workerpb.WorkerCommand) string {
dispatcher.go
219
>
switch cmd.GetType().(type) {
220
>
case *workerpb.WorkerCommand_CancelActivity:
221
>
return "cancel_activity"
222
default:
223
return "unknown"