From d48d8984c19c125c55c199a5e790bed93d9ed2b7 Mon Sep 17 00:00:00 2001 From: Gus Eggert Date: Tue, 23 Aug 2022 12:26:39 -0400 Subject: [PATCH] feat: add StoreTheIndex find providers response size metric --- metrics/definitions.go | 6 ++++++ providers/reframe.go | 1 + 2 files changed, 7 insertions(+) diff --git a/metrics/definitions.go b/metrics/definitions.go index 347b521..de92c9b 100644 --- a/metrics/definitions.go +++ b/metrics/definitions.go @@ -68,6 +68,7 @@ var ( STIFindProvs = stats.Int64("sti_find_provs_total", "Total store the index find provider attempts that were found locally, or not found locally and succeeded, failed or were discarded", stats.UnitDimensionless) STIFindProvsDuration = stats.Float64("sti_find_provs_duration_nanoseconds", "The time it took storetheindex finds from the network to succeed or fail because of timeout or completion", stats.UnitSeconds) + STIFindProvsLength = stats.Int64("sti_find_provs_length", "Number of providers returned for successful responses", stats.UnitDimensionless) AWSRequests = stats.Int64("aws_reqs", "Requests made to AWS", stats.UnitDimensionless) AWSRequestDurationMillis = stats.Float64("aws_req_duration", "The time it took to make an AWS request and receive a response", stats.UnitMilliseconds) @@ -202,6 +203,11 @@ var ( TagKeys: []tag.Key{KeyName, KeyStatus}, Aggregation: view.Sum(), } + STIFindProvsLengthView = &view.View{ + Measure: STIFindProvsLength, + TagKeys: []tag.Key{KeyName}, + Aggregation: defaultProvidersDistribution, + } // DHT views ReceivedMessagesView = &view.View{ Measure: dhtmetrics.ReceivedMessages, diff --git a/providers/reframe.go b/providers/reframe.go index 2f18e0b..886ec48 100644 --- a/providers/reframe.go +++ b/providers/reframe.go @@ -50,6 +50,7 @@ func (x *reframeProvider) GetProviders(ctx context.Context, key []byte) ([]peer. recordReframeFindProvsComplete(ctx, metricsErrStr(err), time.Since(start)) } else { recordReframeFindProvsComplete(ctx, "Success", time.Since(start)) + stats.Record(ctx, metrics.STIFindProvsLength.M(int64(len(peers)))) } return peers, err }