From 4df6070d3a152a1f5d07eb6b120ddfc7d097d86f Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Tue, 8 Jul 2025 10:39:25 -0700 Subject: [PATCH 1/2] change task permit metrics from gauge to histogram --- internal/internal_worker_base.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/internal_worker_base.go b/internal/internal_worker_base.go index 61e140ebb..91e717005 100644 --- a/internal/internal_worker_base.go +++ b/internal/internal_worker_base.go @@ -53,6 +53,7 @@ const ( var ( pollOperationRetryPolicy = createPollRetryPolicy() + concurrentTaskHistogramBuckets = tally.ValueBuckets{10, 20, 50, 100, 150, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000, 10000} ) var errShutdown = errors.New("worker shutting down") @@ -265,8 +266,8 @@ func (bw *baseWorker) runPoller() { // emit metrics on concurrent task permit quota and current task permit count // NOTE task permit doesn't mean there is a task running, it still needs to poll until it gets a task to process // thus the metrics is only an estimated value of how many tasks are running concurrently - bw.metricsScope.Gauge(metrics.ConcurrentTaskQuota).Update(float64(bw.concurrency.TaskPermit.Quota())) - bw.metricsScope.Gauge(metrics.PollerRequestBufferUsage).Update(float64(bw.concurrency.TaskPermit.Count())) + bw.metricsScope.Histogram(metrics.ConcurrentTaskQuota, concurrentTaskHistogramBuckets).RecordValue(float64(bw.concurrency.TaskPermit.Quota())) + bw.metricsScope.Histogram(metrics.PollerRequestBufferUsage, concurrentTaskHistogramBuckets).RecordValue(float64(bw.concurrency.TaskPermit.Count())) if bw.sessionTokenBucket != nil { bw.sessionTokenBucket.waitForAvailableToken() } From 6fe93e29b330c551d30fa0911d25fdb8c6592f5f Mon Sep 17 00:00:00 2001 From: Shijie Sheng Date: Tue, 8 Jul 2025 10:47:38 -0700 Subject: [PATCH 2/2] lint --- internal/internal_worker_base.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/internal_worker_base.go b/internal/internal_worker_base.go index 91e717005..727a6fdda 100644 --- a/internal/internal_worker_base.go +++ b/internal/internal_worker_base.go @@ -52,7 +52,7 @@ const ( ) var ( - pollOperationRetryPolicy = createPollRetryPolicy() + pollOperationRetryPolicy = createPollRetryPolicy() concurrentTaskHistogramBuckets = tally.ValueBuckets{10, 20, 50, 100, 150, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000, 10000} )