Skip to content

Commit

Permalink
Merge branch 'master' into da-q-processors
Browse files Browse the repository at this point in the history
  • Loading branch information
MichaelSnowden committed Nov 24, 2022
2 parents f826cf1 + 306797b commit 73d1477
Show file tree
Hide file tree
Showing 316 changed files with 8,852 additions and 8,429 deletions.
12 changes: 12 additions & 0 deletions .goreleaser.yml
Expand Up @@ -52,6 +52,18 @@ builds:
goarch:
- amd64
- arm64
- id: tdbg
dir: cmd/tools/tdbg
binary: tdbg
env:
- CGO_ENABLED=0
goos:
- linux
- darwin
- windows
goarch:
- amd64
- arm64

checksum:
name_template: 'checksums.txt'
Expand Down
26 changes: 13 additions & 13 deletions client/admin/metric_client.go
Expand Up @@ -26,6 +26,7 @@ package admin

import (
"context"
"time"

"go.temporal.io/api/serviceerror"

Expand All @@ -40,37 +41,36 @@ var _ adminservice.AdminServiceClient = (*metricClient)(nil)

type metricClient struct {
client adminservice.AdminServiceClient
metricsClient metrics.Client
metricsHandler metrics.MetricsHandler
throttledLogger log.Logger
}

// NewMetricClient creates a new instance of adminservice.AdminServiceClient that emits metrics
func NewMetricClient(
client adminservice.AdminServiceClient,
metricsClient metrics.Client,
metricsHandler metrics.MetricsHandler,
throttledLogger log.Logger,
) adminservice.AdminServiceClient {
return &metricClient{
client: client,
metricsClient: metricsClient,
metricsHandler: metricsHandler,
throttledLogger: throttledLogger,
}
}

func (c *metricClient) startMetricsRecording(
ctx context.Context,
metricScope int,
) (metrics.Scope, metrics.Stopwatch) {
operation string,
) (metrics.MetricsHandler, time.Time) {
caller := headers.GetCallerInfo(ctx).CallerName
scope := c.metricsClient.Scope(metricScope, metrics.NamespaceTag(caller))
scope.IncCounter(metrics.ClientRequests)
stopwatch := scope.StartTimer(metrics.ClientLatency)
return scope, stopwatch
handler := c.metricsHandler.WithTags(metrics.OperationTag(operation), metrics.NamespaceTag(caller), metrics.ServiceRoleTag(metrics.AdminRoleTagValue))
handler.Counter(metrics.ClientRequests.GetMetricName()).Record(1)
return handler, time.Now().UTC()
}

func (c *metricClient) finishMetricsRecording(
scope metrics.Scope,
stopwatch metrics.Stopwatch,
handler metrics.MetricsHandler,
startTime time.Time,
err error,
) {
if err != nil {
Expand All @@ -86,7 +86,7 @@ func (c *metricClient) finishMetricsRecording(
default:
c.throttledLogger.Info("admin client encountered error", tag.Error(err), tag.ErrorType(err))
}
scope.Tagged(metrics.ServiceErrorTypeTag(err)).IncCounter(metrics.ClientFailures)
handler.Counter(metrics.ClientFailures.GetMetricName()).Record(1, metrics.ServiceErrorTypeTag(err))
}
stopwatch.Stop()
handler.Timer(metrics.ClientLatency.GetMetricName()).Record(time.Since(startTime))
}

0 comments on commit 73d1477

Please sign in to comment.