diff --git a/common/rpc/interceptor/telemetry.go b/common/rpc/interceptor/telemetry.go index 47179a2e22c..cd91ad66e19 100644 --- a/common/rpc/interceptor/telemetry.go +++ b/common/rpc/interceptor/telemetry.go @@ -79,11 +79,12 @@ var ( ) var ( - respondWorkflowTaskCompleted = "RespondWorkflowTaskCompleted" - pollActivityTaskQueue = "PollActivityTaskQueue" - startWorkflowExecution = "StartWorkflowExecution" - executeMultiOperation = "ExecuteMultiOperation" - queryWorkflow = "QueryWorkflow" + respondWorkflowTaskCompleted = "RespondWorkflowTaskCompleted" + pollActivityTaskQueue = "PollActivityTaskQueue" + startWorkflowExecution = "StartWorkflowExecution" + executeMultiOperation = "ExecuteMultiOperation" + queryWorkflow = "QueryWorkflow" + updateWorkflowExecutionOptions = "UpdateWorkflowExecutionOptions" grpcActions = map[string]struct{}{ startWorkflowExecution: {}, @@ -91,6 +92,7 @@ var ( respondWorkflowTaskCompleted: {}, pollActivityTaskQueue: {}, queryWorkflow: {}, + updateWorkflowExecutionOptions: {}, "RecordActivityTaskHeartbeat": {}, "RecordActivityTaskHeartbeatById": {}, "ResetWorkflowExecution": {}, @@ -255,14 +257,6 @@ func (ti *TelemetryInterceptor) emitActionMetric( } switch methodName { - case startWorkflowExecution: - resp, ok := result.(*workflowservice.StartWorkflowExecutionResponse) - if !ok { - return - } - if resp.Started { - metrics.ActionCounter.With(metricsHandler).Record(1, metrics.ActionType("grpc_"+methodName)) - } case executeMultiOperation: resp, ok := result.(*workflowservice.ExecuteMultiOperationResponse) if !ok { diff --git a/common/rpc/interceptor/telemetry_test.go b/common/rpc/interceptor/telemetry_test.go index 8e9505ca41b..ed652cc1406 100644 --- a/common/rpc/interceptor/telemetry_test.go +++ b/common/rpc/interceptor/telemetry_test.go @@ -35,6 +35,7 @@ import ( protocolpb "go.temporal.io/api/protocol/v1" querypb "go.temporal.io/api/query/v1" "go.temporal.io/api/serviceerror" + workflowpb "go.temporal.io/api/workflow/v1" "go.temporal.io/api/workflowservice/v1" "go.temporal.io/server/api/historyservice/v1" "go.temporal.io/server/common/api" @@ -70,15 +71,10 @@ func TestEmitActionMetric(t *testing.T) { req any resp any }{ - { - methodName: startWorkflow, - fullName: api.WorkflowServicePrefix + startWorkflow, - resp: &workflowservice.StartWorkflowExecutionResponse{Started: false}, - }, { methodName: startWorkflow, fullName: api.WorkflowServicePrefix + startWorkflow, - resp: &workflowservice.StartWorkflowExecutionResponse{Started: true}, + resp: &workflowservice.StartWorkflowExecutionResponse{}, expectEmitMetrics: true, }, { @@ -216,6 +212,24 @@ func TestEmitActionMetric(t *testing.T) { }, expectEmitMetrics: true, }, + { + methodName: updateWorkflowExecutionOptions, + fullName: api.WorkflowServicePrefix + updateWorkflowExecutionOptions, + req: &workflowservice.UpdateWorkflowExecutionOptionsRequest{ + Namespace: "test-namespace", + WorkflowExecution: &commonpb.WorkflowExecution{ + WorkflowId: "test-workflow-id", + RunId: "test-run-id", + }, + WorkflowExecutionOptions: &workflowpb.WorkflowExecutionOptions{ + VersioningOverride: &workflowpb.VersioningOverride{ + Behavior: enumspb.VERSIONING_BEHAVIOR_PINNED, + PinnedVersion: "fake-version", + }, + }, + }, + expectEmitMetrics: true, + }, { methodName: queryWorkflow, fullName: api.WorkflowServicePrefix + queryWorkflow,