From 7ff27da7db669eba499ac2adbd9064a691f879f2 Mon Sep 17 00:00:00 2001 From: Soumya Mohapatra Date: Wed, 6 May 2026 02:14:12 +0530 Subject: [PATCH 1/2] metrics: enable native histograms on all duration metrics Enable Prometheus native histogram collection (dual mode) by setting NativeHistogramBucketFactor: 1.1 on all duration-based histogram definitions across the SDK services. This provides exponentially-spaced buckets (schema=3, ~9% growth per bucket) alongside the existing fixed buckets, improving percentile accuracy without breaking existing monitoring setups. Affected services: - token/services/ttx (endorsement, audit approval, ordering durations) - token/services/ttx/finality (on-status duration) - token/services/auditor (audit, append durations) - token/services/certifier/interactive (certification request duration) - token/services/selector/sherdlock (selection duration) - token/services/network/fabricx/finality/queue (processing duration) - token/core/zkatdlog/nogh/v1 (ZK issue and transfer proof durations) The ImmediateRetries histogram (discrete integer distribution 0-5) is intentionally excluded as native histograms provide no benefit for small discrete distributions. Depends-On: hyperledger-labs/fabric-smart-client#XXXX Signed-off-by: Soumya8898 Signed-off-by: Soumya Mohapatra --- token/core/common/metrics/auditor.go | 8 +++-- token/core/common/metrics/issue.go | 8 +++-- token/core/common/metrics/tokens.go | 8 +++-- token/core/common/metrics/transfer.go | 8 +++-- token/core/common/metrics/upgrade.go | 8 +++-- token/services/auditor/metrics.go | 16 +++++---- .../services/certifier/interactive/metrics.go | 10 +++--- .../network/fabricx/finality/queue/metrics.go | 8 +++-- token/services/selector/sherdlock/metrics.go | 8 +++-- token/services/ttx/finality/metrics.go | 8 +++-- token/services/ttx/metrics.go | 36 ++++++++++++------- 11 files changed, 80 insertions(+), 46 deletions(-) diff --git a/token/core/common/metrics/auditor.go b/token/core/common/metrics/auditor.go index 0c223f9033..a6c8d9db7c 100644 --- a/token/core/common/metrics/auditor.go +++ b/token/core/common/metrics/auditor.go @@ -20,9 +20,11 @@ var ( LabelNames: []string{"network", "channel", "namespace", "method"}, } auditorDurationOpts = HistogramOpts{ - Name: "auditor_service_duration_seconds", - Help: "Duration of AuditorService method calls in seconds", - LabelNames: []string{"network", "channel", "namespace", "method"}, + Name: "auditor_service_duration_seconds", + Help: "Duration of AuditorService method calls in seconds", + LabelNames: []string{"network", "channel", "namespace", "method"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } auditorErrorsOpts = CounterOpts{ Name: "auditor_service_errors_total", diff --git a/token/core/common/metrics/issue.go b/token/core/common/metrics/issue.go index 7683259a54..96c79bfe1e 100644 --- a/token/core/common/metrics/issue.go +++ b/token/core/common/metrics/issue.go @@ -21,9 +21,11 @@ var ( LabelNames: []string{"network", "channel", "namespace", "method"}, } issueDurationOpts = HistogramOpts{ - Name: "issue_service_duration_seconds", - Help: "Duration of IssueService method calls in seconds", - LabelNames: []string{"network", "channel", "namespace", "method"}, + Name: "issue_service_duration_seconds", + Help: "Duration of IssueService method calls in seconds", + LabelNames: []string{"network", "channel", "namespace", "method"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } issueErrorsOpts = CounterOpts{ Name: "issue_service_errors_total", diff --git a/token/core/common/metrics/tokens.go b/token/core/common/metrics/tokens.go index 3a5402ce77..ca26e79a18 100644 --- a/token/core/common/metrics/tokens.go +++ b/token/core/common/metrics/tokens.go @@ -21,9 +21,11 @@ var ( LabelNames: []string{"network", "channel", "namespace", "method"}, } tokensDurationOpts = HistogramOpts{ - Name: "tokens_service_duration_seconds", - Help: "Duration of TokensService method calls in seconds", - LabelNames: []string{"network", "channel", "namespace", "method"}, + Name: "tokens_service_duration_seconds", + Help: "Duration of TokensService method calls in seconds", + LabelNames: []string{"network", "channel", "namespace", "method"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } tokensErrorsOpts = CounterOpts{ Name: "tokens_service_errors_total", diff --git a/token/core/common/metrics/transfer.go b/token/core/common/metrics/transfer.go index 2eb43884d1..278f50bb2b 100644 --- a/token/core/common/metrics/transfer.go +++ b/token/core/common/metrics/transfer.go @@ -21,9 +21,11 @@ var ( LabelNames: []string{"network", "channel", "namespace", "method"}, } transferDurationOpts = HistogramOpts{ - Name: "transfer_service_duration_seconds", - Help: "Duration of TransferService method calls in seconds", - LabelNames: []string{"network", "channel", "namespace", "method"}, + Name: "transfer_service_duration_seconds", + Help: "Duration of TransferService method calls in seconds", + LabelNames: []string{"network", "channel", "namespace", "method"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } transferErrorsOpts = CounterOpts{ Name: "transfer_service_errors_total", diff --git a/token/core/common/metrics/upgrade.go b/token/core/common/metrics/upgrade.go index 9c6020196e..70722c93e6 100644 --- a/token/core/common/metrics/upgrade.go +++ b/token/core/common/metrics/upgrade.go @@ -21,9 +21,11 @@ var ( LabelNames: []string{"network", "channel", "namespace", "method"}, } upgradeDurationOpts = HistogramOpts{ - Name: "tokens_upgrade_service_duration_seconds", - Help: "Duration of TokensUpgradeService method calls in seconds", - LabelNames: []string{"network", "channel", "namespace", "method"}, + Name: "tokens_upgrade_service_duration_seconds", + Help: "Duration of TokensUpgradeService method calls in seconds", + LabelNames: []string{"network", "channel", "namespace", "method"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } upgradeErrorsOpts = CounterOpts{ Name: "tokens_upgrade_service_errors_total", diff --git a/token/services/auditor/metrics.go b/token/services/auditor/metrics.go index 5e10bf3d3f..aaef664a8a 100644 --- a/token/services/auditor/metrics.go +++ b/token/services/auditor/metrics.go @@ -40,18 +40,22 @@ func newMetrics(p metrics.Provider) *Metrics { return &Metrics{ AuditDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "auditor_audit_duration_seconds", - Help: "Histogram of Audit() processing time per transaction (including lock acquisition), in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + Name: "auditor_audit_duration_seconds", + Help: "Histogram of Audit() processing time per transaction (including lock acquisition), in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), AuditLockConflicts: p.NewCounter(metrics.CounterOpts{ Name: "auditor_audit_lock_conflicts_total", Help: "Total number of Audit() calls that failed to acquire enrollment-ID locks", }), AppendDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "auditor_append_duration_seconds", - Help: "Histogram of Append() processing time per transaction, in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + Name: "auditor_append_duration_seconds", + Help: "Histogram of Append() processing time per transaction, in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), AppendErrors: p.NewCounter(metrics.CounterOpts{ Name: "auditor_append_errors_total", diff --git a/token/services/certifier/interactive/metrics.go b/token/services/certifier/interactive/metrics.go index 7d19294c01..b49a5e013e 100644 --- a/token/services/certifier/interactive/metrics.go +++ b/token/services/certifier/interactive/metrics.go @@ -18,10 +18,12 @@ var ( } certificationRequestDuration = metrics.HistogramOpts{ - Name: "certification_request_duration_seconds", - Help: "Histogram of certification batch request durations in seconds.", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, - LabelNames: []string{"channel", "namespace"}, + Name: "certification_request_duration_seconds", + Help: "Histogram of certification batch request durations in seconds.", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + LabelNames: []string{"channel", "namespace"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } certificationErrors = metrics.CounterOpts{ diff --git a/token/services/network/fabricx/finality/queue/metrics.go b/token/services/network/fabricx/finality/queue/metrics.go index 41fa6fdee9..cfd19b7bc4 100644 --- a/token/services/network/fabricx/finality/queue/metrics.go +++ b/token/services/network/fabricx/finality/queue/metrics.go @@ -48,9 +48,11 @@ func newMetrics(p metrics.Provider) *Metrics { Help: "Total number of errors returned by event.Process in worker goroutines", }), ProcessingDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "finality_queue_processing_duration_seconds", - Help: "Histogram of successful event processing time in worker goroutines (seconds)", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5}, + Name: "finality_queue_processing_duration_seconds", + Help: "Histogram of successful event processing time in worker goroutines (seconds)", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), } } diff --git a/token/services/selector/sherdlock/metrics.go b/token/services/selector/sherdlock/metrics.go index 98d5fb0daf..ad4dc6104b 100644 --- a/token/services/selector/sherdlock/metrics.go +++ b/token/services/selector/sherdlock/metrics.go @@ -38,9 +38,11 @@ func NewMetrics(p metrics.Provider) *Metrics { LabelNames: []string{fetcherTypeLabel}, }), SelectionDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "selection_duration_seconds", - Help: "Duration of a token selection call in seconds", - Buckets: selectionDurationBuckets, + Name: "selection_duration_seconds", + Help: "Duration of a token selection call in seconds", + Buckets: selectionDurationBuckets, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), SelectionOutcome: p.NewCounter(metrics.CounterOpts{ Name: "selection_outcome_total", diff --git a/token/services/ttx/finality/metrics.go b/token/services/ttx/finality/metrics.go index b5b5064ba7..6b6499aa06 100644 --- a/token/services/ttx/finality/metrics.go +++ b/token/services/ttx/finality/metrics.go @@ -58,9 +58,11 @@ func newMetrics(p metrics.Provider) *Metrics { Help: "Total number of transactions whose finality processing was abandoned after all retries were exhausted", }), OnStatusDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "finality_listener_on_status_duration_seconds", - Help: "Histogram of total OnStatus processing time per transaction (including retries), in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + Name: "finality_listener_on_status_duration_seconds", + Help: "Histogram of total OnStatus processing time per transaction (including retries), in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), } } diff --git a/token/services/ttx/metrics.go b/token/services/ttx/metrics.go index 661c9df3c3..6322b539b2 100644 --- a/token/services/ttx/metrics.go +++ b/token/services/ttx/metrics.go @@ -15,6 +15,12 @@ import ( var defaultDurationBuckets = []float64{.01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10, 30} +// defaultNativeHistogramBucketFactor sets the resolution for native histogram +// buckets (schema=3, ~9% growth between boundaries). Setting this alongside +// classic Buckets enables dual-mode emission: old scrapers see classic buckets, +// new scrapers get the higher-resolution native histogram data. +const defaultNativeHistogramBucketFactor = 1.1 + var ( spKey = reflect.TypeOf((*Metrics)(nil)) @@ -34,22 +40,28 @@ var ( LabelNames: []string{"network", "channel", "namespace"}, } endorsementDuration = metrics.HistogramOpts{ - Name: "endorsement_duration_seconds", - Help: "Duration of the full endorsement collection phase including signatures, audit, and chaincode approval.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, + Name: "endorsement_duration_seconds", + Help: "Duration of the full endorsement collection phase including signatures, audit, and chaincode approval.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } auditApprovalDuration = metrics.HistogramOpts{ - Name: "audit_approval_duration_seconds", - Help: "Duration of the auditor approval phase including validation, append, and signing.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, + Name: "audit_approval_duration_seconds", + Help: "Duration of the auditor approval phase including validation, append, and signing.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } orderingDuration = metrics.HistogramOpts{ - Name: "ordering_duration_seconds", - Help: "Duration of the transaction broadcast to the ordering service.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, + Name: "ordering_duration_seconds", + Help: "Duration of the transaction broadcast to the ordering service.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } ) From 95489bca2310365c397991249eba12f7951e09da Mon Sep 17 00:00:00 2001 From: Soumya Mohapatra Date: Wed, 6 May 2026 20:27:43 +0530 Subject: [PATCH 2/2] go.mod: point fabric-smart-client at merged upstream commit Remove the temporary local replace directive and update the dependency to v0.10.2-0.20260506093942-1274969d717d which includes native histogram support in HistogramOpts (hyperledger-labs/fabric-smart-client#1398). Signed-off-by: Soumya Mohapatra --- go.mod | 39 +++----- go.sum | 97 +++++++------------ token/services/auditor/metrics.go | 20 ++-- .../services/certifier/interactive/metrics.go | 12 +-- .../network/fabricx/finality/queue/metrics.go | 10 +- token/services/selector/sherdlock/metrics.go | 10 +- token/services/ttx/finality/metrics.go | 10 +- token/services/ttx/metrics.go | 36 +++---- 8 files changed, 97 insertions(+), 137 deletions(-) diff --git a/go.mod b/go.mod index a80ea0d217..48a5e670a8 100644 --- a/go.mod +++ b/go.mod @@ -10,10 +10,10 @@ require ( github.com/consensys/gnark-crypto v0.20.1 github.com/dgraph-io/ristretto/v2 v2.4.0 github.com/gin-gonic/gin v1.12.0 - github.com/go-co-op/gocron/v2 v2.21.1 + github.com/go-co-op/gocron/v2 v2.19.1 github.com/google/pprof v0.0.0-20260402051712-545e8a4df936 github.com/hashicorp/go-uuid v1.0.3 - github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260428094934-a70a13e26c74 + github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260506093942-1274969d717d github.com/hyperledger/fabric-chaincode-go/v2 v2.3.0 github.com/hyperledger/fabric-lib-go v1.1.3-0.20240523144151-25edd1eaf5f5 github.com/hyperledger/fabric-protos-go-apiv2 v0.3.7 @@ -34,12 +34,12 @@ require ( go.opentelemetry.io/otel/trace v1.43.0 go.uber.org/dig v1.19.0 go.uber.org/zap v1.27.1 - golang.org/x/crypto v0.50.0 - golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f + golang.org/x/crypto v0.49.0 + golang.org/x/exp v0.0.0-20260312153236-7ab1446f8b90 golang.org/x/sync v0.20.0 google.golang.org/protobuf v1.36.11 gopkg.in/yaml.v2 v2.4.0 - modernc.org/sqlite v1.49.1 + modernc.org/sqlite v1.48.0 ) require ( @@ -53,7 +53,6 @@ require ( cloud.google.com/go/storage v1.49.0 // indirect filippo.io/bigmod v0.1.1-0.20260103110540-f8a47775ebe5 // indirect filippo.io/keygen v0.0.0-20260114151900-8e2790ea4c5b // indirect - github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect github.com/BurntSushi/toml v1.6.0 // indirect github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.30.0 // indirect github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/metric v0.48.1 // indirect @@ -81,12 +80,10 @@ require ( github.com/cockroachdb/redact v1.1.5 // indirect github.com/containerd/errdefs v1.0.0 // indirect github.com/containerd/errdefs/pkg v0.3.0 // indirect - github.com/containerd/log v0.1.0 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.1 // indirect github.com/distribution/reference v0.6.0 // indirect - github.com/docker/docker v28.5.2+incompatible // indirect github.com/docker/go-connections v0.6.0 // indirect github.com/docker/go-units v0.5.0 // indirect github.com/dunglas/httpsfv v1.1.0 // indirect @@ -97,7 +94,6 @@ require ( github.com/filecoin-project/go-clock v0.1.0 // indirect github.com/flynn/noise v1.1.0 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect - github.com/fsouza/go-dockerclient v1.12.3 // indirect github.com/gabriel-vasile/mimetype v1.4.13 // indirect github.com/getsentry/sentry-go v0.27.0 // indirect github.com/ghodss/yaml v1.0.0 // indirect @@ -149,7 +145,6 @@ require ( github.com/jonboulle/clockwork v0.5.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/kilic/bls12-381 v0.1.0 // indirect - github.com/klauspost/compress v1.18.0 // indirect github.com/klauspost/cpuid/v2 v2.3.0 // indirect github.com/knadh/koanf/maps v0.1.2 // indirect github.com/knadh/koanf/parsers/yaml v1.1.0 // indirect @@ -186,15 +181,10 @@ require ( github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect - github.com/moby/go-archive v0.1.0 // indirect - github.com/moby/patternmatcher v0.6.0 // indirect - github.com/moby/sys/sequential v0.6.0 // indirect - github.com/moby/sys/user v0.4.0 // indirect - github.com/moby/sys/userns v0.1.0 // indirect - github.com/moby/term v0.5.0 // indirect + github.com/moby/moby/api v1.54.2 // indirect + github.com/moby/moby/client v0.4.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/morikuni/aec v1.0.0 // indirect github.com/mr-tron/base58 v1.2.0 // indirect github.com/multiformats/go-base32 v0.1.0 // indirect github.com/multiformats/go-base36 v0.2.0 // indirect @@ -242,7 +232,6 @@ require ( github.com/robfig/cron/v3 v3.0.1 // indirect github.com/rogpeppe/go-internal v1.14.1 // indirect github.com/sagikazarmark/locafero v0.11.0 // indirect - github.com/sirupsen/logrus v1.9.3 // indirect github.com/spaolacci/murmur3 v1.1.0 // indirect github.com/spf13/afero v1.15.0 // indirect github.com/spf13/cast v1.10.0 // indirect @@ -283,14 +272,14 @@ require ( go.yaml.in/yaml/v2 v2.4.4 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect golang.org/x/arch v0.22.0 // indirect - golang.org/x/mod v0.35.0 // indirect - golang.org/x/net v0.53.0 // indirect + golang.org/x/mod v0.34.0 // indirect + golang.org/x/net v0.52.0 // indirect golang.org/x/oauth2 v0.35.0 // indirect - golang.org/x/sys v0.43.0 // indirect - golang.org/x/telemetry v0.0.0-20260409153401-be6f6cb8b1fa // indirect - golang.org/x/text v0.36.0 // indirect + golang.org/x/sys v0.42.0 // indirect + golang.org/x/telemetry v0.0.0-20260311193753-579e4da9a98c // indirect + golang.org/x/text v0.35.0 // indirect golang.org/x/time v0.14.0 // indirect - golang.org/x/tools v0.44.0 // indirect + golang.org/x/tools v0.43.0 // indirect gonum.org/v1/gonum v0.17.0 // indirect google.golang.org/api v0.215.0 // indirect google.golang.org/genproto v0.0.0-20241118233622-e639e219e697 // indirect @@ -299,7 +288,7 @@ require ( google.golang.org/grpc v1.79.3 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/blake3 v1.4.1 // indirect - modernc.org/libc v1.72.0 // indirect + modernc.org/libc v1.70.0 // indirect modernc.org/mathutil v1.7.1 // indirect modernc.org/memory v1.11.0 // indirect ) diff --git a/go.sum b/go.sum index 1a89458ca5..5e40206b92 100644 --- a/go.sum +++ b/go.sum @@ -622,10 +622,6 @@ filippo.io/keygen v0.0.0-20260114151900-8e2790ea4c5b h1:REI1FbdW71yO56Are4XAxD+O filippo.io/keygen v0.0.0-20260114151900-8e2790ea4c5b/go.mod h1:9nnw1SlYHYuPSo/3wjQzNjSbeHlq2NsKo5iEtfJPWP0= gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8= git.sr.ht/~sbinet/gg v0.3.1/go.mod h1:KGYtlADtqsqANL9ueOFkWymvzUvLMQllU5Ixo+8v3pc= -github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 h1:He8afgbRMd7mFxO99hRNu+6tazq8nFF9lIwo9JFroBk= -github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= -github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0= -github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/toml v1.6.0 h1:dRaEfpa2VI55EwlIW72hMRHdWouJeRF7TPYhI+AUQjk= github.com/BurntSushi/toml v1.6.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= @@ -742,16 +738,12 @@ github.com/containerd/errdefs v1.0.0 h1:tg5yIfIlQIrxYtu9ajqY42W3lpS19XqdxRQeEwYG github.com/containerd/errdefs v1.0.0/go.mod h1:+YBYIdtsnF4Iw6nWZhJcqGSg/dwvV7tyJ/kCkyJ2k+M= github.com/containerd/errdefs/pkg v0.3.0 h1:9IKJ06FvyNlexW690DXuQNx2KA2cUJXx151Xdx3ZPPE= github.com/containerd/errdefs/pkg v0.3.0/go.mod h1:NJw6s9HwNuRhnjJhM7pylWwMyAkmCQvQ4GpJHEqRLVk= -github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= -github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= -github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= @@ -768,8 +760,6 @@ github.com/dgryski/go-farm v0.0.0-20240924180020-3414d57e47da h1:aIftn67I1fkbMa5 github.com/dgryski/go-farm v0.0.0-20240924180020-3414d57e47da/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/docker v28.5.2+incompatible h1:DBX0Y0zAjZbSrm1uzOkdr1onVghKaftjlSWt4AFexzM= -github.com/docker/docker v28.5.2+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/go-connections v0.6.0 h1:LlMG9azAe1TqfR7sO+NJttz1gy6KO7VJBh+pMmjSD94= github.com/docker/go-connections v0.6.0/go.mod h1:AahvXYshr6JgfUJGdDCs2b5EZG/vmaMAntpSFH5BFKE= github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= @@ -820,8 +810,6 @@ github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMo github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k= github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0= -github.com/fsouza/go-dockerclient v1.12.3 h1:CEsX4/msyMEekHAR9Pf8XniZBtwGo0Kl+mLPQ/AnSys= -github.com/fsouza/go-dockerclient v1.12.3/go.mod h1:gl0t2KUfrsLbm4tw5/ySsJkkFpi7Fz9gXzY2BKLEvZA= github.com/gabriel-vasile/mimetype v1.4.13 h1:46nXokslUBsAJE/wMsp5gtO500a4F3Nkz9Ufpk2AcUM= github.com/gabriel-vasile/mimetype v1.4.13/go.mod h1:d+9Oxyo1wTzWdyVUPMmXFvp4F9tea18J8ufA774AB3s= github.com/getsentry/sentry-go v0.27.0 h1:Pv98CIbtB3LkMWmXi4Joa5OOcwbmnX88sF5qbK3r3Ps= @@ -840,8 +828,8 @@ github.com/gkampitakis/go-diff v1.3.2 h1:Qyn0J9XJSDTgnsgHRdz9Zp24RaJeKMUHg2+PDZZ github.com/gkampitakis/go-diff v1.3.2/go.mod h1:LLgOrpqleQe26cte8s36HTWcTmMEur6OPYerdAAS9tk= github.com/gkampitakis/go-snaps v0.5.15 h1:amyJrvM1D33cPHwVrjo9jQxX8g/7E2wYdZ+01KS3zGE= github.com/gkampitakis/go-snaps v0.5.15/go.mod h1:HNpx/9GoKisdhw9AFOBT1N7DBs9DiHo/hGheFGBZ+mc= -github.com/go-co-op/gocron/v2 v2.21.1 h1:QYOK6iOQVCut+jDcs4zRdWRTBHRxRCEeeFi1TnAmgbU= -github.com/go-co-op/gocron/v2 v2.21.1/go.mod h1:5lEiCKk1oVJV39Zg7/YG10OnaVrDAV5GGR6O0663k6U= +github.com/go-co-op/gocron/v2 v2.19.1 h1:B4iLeA0NB/2iO3EKQ7NfKn5KsQgZfjb2fkvoZJU3yBI= +github.com/go-co-op/gocron/v2 v2.19.1/go.mod h1:5lEiCKk1oVJV39Zg7/YG10OnaVrDAV5GGR6O0663k6U= github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxIA= github.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-fonts/dejavu v0.1.0/go.mod h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g= @@ -1065,8 +1053,8 @@ github.com/huin/goupnp v1.3.0 h1:UvLUlWDNpoUdYzb2TCn+MuTWtcjXKSza2n6CBdQ0xXc= github.com/huin/goupnp v1.3.0/go.mod h1:gnGPsThkYa7bFi/KWmEysQRf48l2dvR5bxr2OFckNX8= github.com/hyperledger-labs/SmartBFT v0.0.0-20250503203013-eb005eef8866 h1:Mu/6NJsfl9g3wM15Ue7hqPq4LtgYDoABh8MO4u8aW4g= github.com/hyperledger-labs/SmartBFT v0.0.0-20250503203013-eb005eef8866/go.mod h1:9aNHNXsCVy/leGz2gpTC1eOL5QecxbSAGjqsLh4T1LM= -github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260428094934-a70a13e26c74 h1:zI+fncoye8nvc7cNSq6XvnT5SkgPugOmKZpW9NFohkw= -github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260428094934-a70a13e26c74/go.mod h1:gsoGY2q8qPBcw/FeKhGNwmtRUBch6A/M/Y0KCg/Kd8Q= +github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260506093942-1274969d717d h1:HJoQ9I/dJkx/8aQ/IjbXGAXs+uUz+uiXfzc3qTW1Suo= +github.com/hyperledger-labs/fabric-smart-client v0.10.2-0.20260506093942-1274969d717d/go.mod h1:Z1ec3rqdbCv0Jz/1ZXtxLtvb6l8rS8+KmooKLdjymRY= github.com/hyperledger/aries-bbs-go v0.0.0-20240528084656-761671ea73bc h1:3Ykk6MtyfnlzMOQry9zkxsoLWpCWZwDPqehO/BJwArM= github.com/hyperledger/aries-bbs-go v0.0.0-20240528084656-761671ea73bc/go.mod h1:Kofn6A6WWea1ZM8Rys5aBW9dszwJ7Ywa0kyyYL0TPYw= github.com/hyperledger/fabric-amcl v0.0.0-20230602173724-9e02669dceb2 h1:B1Nt8hKb//KvgGRprk0h1t4lCnwhE9/ryb1WqfZbV+M= @@ -1263,20 +1251,10 @@ github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zx github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= -github.com/moby/go-archive v0.1.0 h1:Kk/5rdW/g+H8NHdJW2gsXyZ7UnzvJNOy6VKJqueWdcQ= -github.com/moby/go-archive v0.1.0/go.mod h1:G9B+YoujNohJmrIYFBpSd54GTUB4lt9S+xVQvsJyFuo= -github.com/moby/patternmatcher v0.6.0 h1:GmP9lR19aU5GqSSFko+5pRqHi+Ohk1O69aFiKkVGiPk= -github.com/moby/patternmatcher v0.6.0/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= -github.com/moby/sys/atomicwriter v0.1.0 h1:kw5D/EqkBwsBFi0ss9v1VG3wIkVhzGvLklJ+w3A14Sw= -github.com/moby/sys/atomicwriter v0.1.0/go.mod h1:Ul8oqv2ZMNHOceF643P6FKPXeCmYtlQMvpizfsSoaWs= -github.com/moby/sys/sequential v0.6.0 h1:qrx7XFUd/5DxtqcoH1h438hF5TmOvzC/lspjy7zgvCU= -github.com/moby/sys/sequential v0.6.0/go.mod h1:uyv8EUTrca5PnDsdMGXhZe6CCe8U/UiTWd+lL+7b/Ko= -github.com/moby/sys/user v0.4.0 h1:jhcMKit7SA80hivmFJcbB1vqmw//wU61Zdui2eQXuMs= -github.com/moby/sys/user v0.4.0/go.mod h1:bG+tYYYJgaMtRKgEmuueC0hJEAZWwtIbZTB+85uoHjs= -github.com/moby/sys/userns v0.1.0 h1:tVLXkFOxVu9A64/yh59slHVv9ahO9UIev4JZusOLG/g= -github.com/moby/sys/userns v0.1.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28= -github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= -github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= +github.com/moby/moby/api v1.54.2 h1:wiat9QAhnDQjA7wk1kh/TqHz2I1uUA7M7t9SAl/JNXg= +github.com/moby/moby/api v1.54.2/go.mod h1:+RQ6wluLwtYaTd1WnPLykIDPekkuyD/ROWQClE83pzs= +github.com/moby/moby/client v0.4.0 h1:S+2XegzHQrrvTCvF6s5HFzcrywWQmuVnhOXe2kiWjIw= +github.com/moby/moby/client v0.4.0/go.mod h1:QWPbvWchQbxBNdaLSpoKpCdf5E+WxFAgNHogCWDoa7g= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -1284,8 +1262,6 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= -github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/mr-tron/base58 v1.1.2/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= @@ -1466,8 +1442,6 @@ github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeV github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= -github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smarty/assertions v1.15.0 h1:cR//PqUBUiQRakZWqBiFFQ9wb8emQGDb0HeGdqGByCY= github.com/smarty/assertions v1.15.0/go.mod h1:yABtdzeQs6l1brC900WlRNwj6ZR55d7B+E8C6HtKdec= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= @@ -1601,8 +1575,6 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.40.0 h1:QKdN8ly8zEMrByybbQg go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.40.0/go.mod h1:bTdK1nhqF76qiPoCCdyFIV+N/sRHYXYCTQc+3VCi3MI= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.40.0 h1:DvJDOPmSWQHWywQS6lKL+pb8s3gBLOZUtw4N+mavW1I= go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.40.0/go.mod h1:EtekO9DEJb4/jRyN4v4Qjc2yA7AtfCBuz2FynRUWTXs= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.40.0 h1:wVZXIWjQSeSmMoxF74LzAnpVQOAFDo3pPji9Y4SOFKc= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.40.0/go.mod h1:khvBS2IggMFNwZK/6lEeHg/W57h/IX6J4URh57fuI40= go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.40.0 h1:MzfofMZN8ulNqobCmCAVbqVL5syHw+eB2qPRkCMA/fQ= @@ -1664,8 +1636,8 @@ golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= -golang.org/x/crypto v0.50.0 h1:zO47/JPrL6vsNkINmLoo/PH1gcxpls50DNogFvB5ZGI= -golang.org/x/crypto v0.50.0/go.mod h1:3muZ7vA7PBCE6xgPX7nkzzjiUq87kRItoJQM1Yo8S+Q= +golang.org/x/crypto v0.49.0 h1:+Ng2ULVvLHnJ/ZFEq4KdcDd/cfjrrjjNSXNzxg0Y4U4= +golang.org/x/crypto v0.49.0/go.mod h1:ErX4dUh2UM+CFYiXZRTcMpEcN8b/1gxEuv3nODoYtCA= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -1681,8 +1653,8 @@ golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80= +golang.org/x/exp v0.0.0-20260312153236-7ab1446f8b90 h1:jiDhWWeC7jfWqR9c/uplMOqJ0sbNlNWv0UkzE0vX1MA= +golang.org/x/exp v0.0.0-20260312153236-7ab1446f8b90/go.mod h1:xE1HEv6b+1SCZ5/uscMRjUBKtIxworgEcEi+/n9NQDQ= golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= @@ -1728,8 +1700,8 @@ golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.35.0 h1:Ww1D637e6Pg+Zb2KrWfHQUnH2dQRLBQyAtpr/haaJeM= -golang.org/x/mod v0.35.0/go.mod h1:+GwiRhIInF8wPm+4AoT6L0FA1QWAad3OMdTRx4tFYlU= +golang.org/x/mod v0.34.0 h1:xIHgNUUnW6sYkcM5Jleh05DvLOtwc6RitGHbDk4akRI= +golang.org/x/mod v0.34.0/go.mod h1:ykgH52iCZe79kzLLMhyCUzhMci+nQj+0XkbXpNYtVjY= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1795,8 +1767,8 @@ golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.53.0 h1:d+qAbo5L0orcWAr0a9JweQpjXF19LMXJE8Ey7hwOdUA= -golang.org/x/net v0.53.0/go.mod h1:JvMuJH7rrdiCfbeHoo3fCQU24Lf5JJwT9W3sJFulfgs= +golang.org/x/net v0.52.0 h1:He/TN1l0e4mmR3QqHMT2Xab3Aj3L9qjbhRm78/6jrW0= +golang.org/x/net v0.52.0/go.mod h1:R1MAz7uMZxVMualyPXb+VaqGSa3LIaUqk0eEt3w36Sw= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1929,7 +1901,6 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1942,10 +1913,10 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.43.0 h1:Rlag2XtaFTxp19wS8MXlJwTvoh8ArU6ezoyFsMyCTNI= -golang.org/x/sys v0.43.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/telemetry v0.0.0-20260409153401-be6f6cb8b1fa h1:efT73AJZfAAUV7SOip6pWGkwJDzIGiKBZGVzHYa+ve4= -golang.org/x/telemetry v0.0.0-20260409153401-be6f6cb8b1fa/go.mod h1:kHjTxDEnAu6/Nl9lDkzjWpR+bmKfxeiRuSDlsMb70gE= +golang.org/x/sys v0.42.0 h1:omrd2nAlyT5ESRdCLYdm3+fMfNFE/+Rf4bDIQImRJeo= +golang.org/x/sys v0.42.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/telemetry v0.0.0-20260311193753-579e4da9a98c h1:6a8FdnNk6bTXBjR4AGKFgUKuo+7GnR3FX5L7CbveeZc= +golang.org/x/telemetry v0.0.0-20260311193753-579e4da9a98c/go.mod h1:TpUTTEp9frx7rTdLpC9gFG9kdI7zVLFTFFlqaH2Cncw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -1956,8 +1927,6 @@ golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= -golang.org/x/term v0.42.0 h1:UiKe+zDFmJobeJ5ggPwOshJIVt6/Ft0rcfrXZDLWAWY= -golang.org/x/term v0.42.0/go.mod h1:Dq/D+snpsbazcBG5+F9Q1n2rXV8Ma+71xEjTRufARgY= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1974,8 +1943,8 @@ golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= +golang.org/x/text v0.35.0 h1:JOVx6vVDFokkpaq1AEptVzLTpDe9KGpj5tR4/X+ybL8= +golang.org/x/text v0.35.0/go.mod h1:khi/HExzZJ2pGnjenulevKNX1W67CUy0AsXcNubPGCA= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -2057,8 +2026,8 @@ golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= golang.org/x/tools v0.8.0/go.mod h1:JxBZ99ISMI5ViVkT1tr6tdNmXeTrcpVSD3vZ1RsRdN4= -golang.org/x/tools v0.44.0 h1:UP4ajHPIcuMjT1GqzDWRlalUEoY+uzoZKnhOjbIPD2c= -golang.org/x/tools v0.44.0/go.mod h1:KA0AfVErSdxRZIsOVipbv3rQhVXTnlU6UhKxHd1seDI= +golang.org/x/tools v0.43.0 h1:12BdW9CeB3Z+J/I/wj34VMl8X+fEXBxVR90JeMX5E7s= +golang.org/x/tools v0.43.0/go.mod h1:uHkMso649BX2cZK6+RpuIPXS3ho2hZo4FVwfoy1vIk0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -2387,16 +2356,16 @@ lukechampine.com/uint128 v1.2.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl modernc.org/cc/v3 v3.36.0/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= modernc.org/cc/v3 v3.36.2/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= modernc.org/cc/v3 v3.36.3/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= -modernc.org/cc/v4 v4.27.3 h1:uNCgn37E5U09mTv1XgskEVUJ8ADKpmFMPxzGJ0TSo+U= -modernc.org/cc/v4 v4.27.3/go.mod h1:3YjcbCqhoTTHPycJDRl2WZKKFj0nwcOIPBfEZK0Hdk8= +modernc.org/cc/v4 v4.27.1 h1:9W30zRlYrefrDV2JE2O8VDtJ1yPGownxciz5rrbQZis= +modernc.org/cc/v4 v4.27.1/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0= modernc.org/ccgo/v3 v3.0.0-20220428102840-41399a37e894/go.mod h1:eI31LL8EwEBKPpNpA4bU1/i+sKOwOrQy8D87zWUcRZc= modernc.org/ccgo/v3 v3.0.0-20220430103911-bc99d88307be/go.mod h1:bwdAnOoaIt8Ax9YdWGjxWsdkPcZyRPHqrOvJxaKAKGw= modernc.org/ccgo/v3 v3.16.4/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ= modernc.org/ccgo/v3 v3.16.6/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ= modernc.org/ccgo/v3 v3.16.8/go.mod h1:zNjwkizS+fIFDrDjIAgBSCLkWbJuHF+ar3QRn+Z9aws= modernc.org/ccgo/v3 v3.16.9/go.mod h1:zNMzC9A9xeNUepy6KuZBbugn3c0Mc9TeiJO4lgvkJDo= -modernc.org/ccgo/v4 v4.32.4 h1:L5OB8rpEX4ZsXEQwGozRfJyJSFHbbNVOoQ59DU9/KuU= -modernc.org/ccgo/v4 v4.32.4/go.mod h1:lY7f+fiTDHfcv6YlRgSkxYfhs+UvOEEzj49jAn2TOx0= +modernc.org/ccgo/v4 v4.32.0 h1:hjG66bI/kqIPX1b2yT6fr/jt+QedtP2fqojG2VrFuVw= +modernc.org/ccgo/v4 v4.32.0/go.mod h1:6F08EBCx5uQc38kMGl+0Nm0oWczoo1c7cgpzEry7Uc0= modernc.org/ccorpus v1.11.6/go.mod h1:2gEUTrWqdpH2pXsmTM1ZkjeSrUWDpjMu2T6m29L/ErQ= modernc.org/fileutil v1.4.0 h1:j6ZzNTftVS054gi281TyLjHPp6CPHr2KCxEXjEbD6SM= modernc.org/fileutil v1.4.0/go.mod h1:EqdKFDxiByqxLk8ozOxObDSfcVOv/54xDs/DUHdvCUU= @@ -2414,8 +2383,8 @@ modernc.org/libc v1.16.17/go.mod h1:hYIV5VZczAmGZAnG15Vdngn5HSF5cSkbvfz2B7GRuVU= modernc.org/libc v1.16.19/go.mod h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA= modernc.org/libc v1.17.0/go.mod h1:XsgLldpP4aWlPlsjqKRdHPqCxCjISdHfM/yeWC5GyW0= modernc.org/libc v1.17.1/go.mod h1:FZ23b+8LjxZs7XtFMbSzL/EhPxNbfZbErxEHc7cbD9s= -modernc.org/libc v1.72.0 h1:IEu559v9a0XWjw0DPoVKtXpO2qt5NVLAnFaBbjq+n8c= -modernc.org/libc v1.72.0/go.mod h1:tTU8DL8A+XLVkEY3x5E/tO7s2Q/q42EtnNWda/L5QhQ= +modernc.org/libc v1.70.0 h1:U58NawXqXbgpZ/dcdS9kMshu08aiA6b7gusEusqzNkw= +modernc.org/libc v1.70.0/go.mod h1:OVmxFGP1CI/Z4L3E0Q3Mf1PDE0BucwMkcXjjLntvHJo= modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.4.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= @@ -2433,8 +2402,8 @@ modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns= modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w= modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE= modernc.org/sqlite v1.18.1/go.mod h1:6ho+Gow7oX5V+OiOQ6Tr4xeqbx13UZ6t+Fw9IRUG4d4= -modernc.org/sqlite v1.49.1 h1:dYGHTKcX1sJ+EQDnUzvz4TJ5GbuvhNJa8Fg6ElGx73U= -modernc.org/sqlite v1.49.1/go.mod h1:m0w8xhwYUVY3H6pSDwc3gkJ/irZT/0YEXwBlhaxQEew= +modernc.org/sqlite v1.48.0 h1:ElZyLop3Q2mHYk5IFPPXADejZrlHu7APbpB0sF78bq4= +modernc.org/sqlite v1.48.0/go.mod h1:hWjRO6Tj/5Ik8ieqxQybiEOUXy0NJFNp2tpvVpKlvig= modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw= modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw= modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0= @@ -2444,6 +2413,8 @@ modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= modernc.org/z v1.5.1/go.mod h1:eWFB510QWW5Th9YGZT81s+LwvaAs3Q2yr4sP0rmLkv8= +pgregory.net/rapid v1.2.0 h1:keKAYRcjm+e1F0oAuU5F5+YPAWcyxNNRK2wud503Gnk= +pgregory.net/rapid v1.2.0/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= diff --git a/token/services/auditor/metrics.go b/token/services/auditor/metrics.go index aaef664a8a..2bbef057dc 100644 --- a/token/services/auditor/metrics.go +++ b/token/services/auditor/metrics.go @@ -40,22 +40,22 @@ func newMetrics(p metrics.Provider) *Metrics { return &Metrics{ AuditDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "auditor_audit_duration_seconds", - Help: "Histogram of Audit() processing time per transaction (including lock acquisition), in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "auditor_audit_duration_seconds", + Help: "Histogram of Audit() processing time per transaction (including lock acquisition), in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), AuditLockConflicts: p.NewCounter(metrics.CounterOpts{ Name: "auditor_audit_lock_conflicts_total", Help: "Total number of Audit() calls that failed to acquire enrollment-ID locks", }), AppendDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "auditor_append_duration_seconds", - Help: "Histogram of Append() processing time per transaction, in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "auditor_append_duration_seconds", + Help: "Histogram of Append() processing time per transaction, in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), AppendErrors: p.NewCounter(metrics.CounterOpts{ Name: "auditor_append_errors_total", diff --git a/token/services/certifier/interactive/metrics.go b/token/services/certifier/interactive/metrics.go index b49a5e013e..1fbeaacc87 100644 --- a/token/services/certifier/interactive/metrics.go +++ b/token/services/certifier/interactive/metrics.go @@ -18,12 +18,12 @@ var ( } certificationRequestDuration = metrics.HistogramOpts{ - Name: "certification_request_duration_seconds", - Help: "Histogram of certification batch request durations in seconds.", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, - LabelNames: []string{"channel", "namespace"}, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "certification_request_duration_seconds", + Help: "Histogram of certification batch request durations in seconds.", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + LabelNames: []string{"channel", "namespace"}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, } certificationErrors = metrics.CounterOpts{ diff --git a/token/services/network/fabricx/finality/queue/metrics.go b/token/services/network/fabricx/finality/queue/metrics.go index cfd19b7bc4..dc2194adc7 100644 --- a/token/services/network/fabricx/finality/queue/metrics.go +++ b/token/services/network/fabricx/finality/queue/metrics.go @@ -48,11 +48,11 @@ func newMetrics(p metrics.Provider) *Metrics { Help: "Total number of errors returned by event.Process in worker goroutines", }), ProcessingDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "finality_queue_processing_duration_seconds", - Help: "Histogram of successful event processing time in worker goroutines (seconds)", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5}, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "finality_queue_processing_duration_seconds", + Help: "Histogram of successful event processing time in worker goroutines (seconds)", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), } } diff --git a/token/services/selector/sherdlock/metrics.go b/token/services/selector/sherdlock/metrics.go index ad4dc6104b..6f32bd1e22 100644 --- a/token/services/selector/sherdlock/metrics.go +++ b/token/services/selector/sherdlock/metrics.go @@ -38,11 +38,11 @@ func NewMetrics(p metrics.Provider) *Metrics { LabelNames: []string{fetcherTypeLabel}, }), SelectionDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "selection_duration_seconds", - Help: "Duration of a token selection call in seconds", - Buckets: selectionDurationBuckets, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "selection_duration_seconds", + Help: "Duration of a token selection call in seconds", + Buckets: selectionDurationBuckets, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), SelectionOutcome: p.NewCounter(metrics.CounterOpts{ Name: "selection_outcome_total", diff --git a/token/services/ttx/finality/metrics.go b/token/services/ttx/finality/metrics.go index 6b6499aa06..c835947ce9 100644 --- a/token/services/ttx/finality/metrics.go +++ b/token/services/ttx/finality/metrics.go @@ -58,11 +58,11 @@ func newMetrics(p metrics.Provider) *Metrics { Help: "Total number of transactions whose finality processing was abandoned after all retries were exhausted", }), OnStatusDuration: p.NewHistogram(metrics.HistogramOpts{ - Name: "finality_listener_on_status_duration_seconds", - Help: "Histogram of total OnStatus processing time per transaction (including retries), in seconds", - Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, - NativeHistogramBucketFactor: 1.1, - NativeHistogramMaxBucketNumber: 100, + Name: "finality_listener_on_status_duration_seconds", + Help: "Histogram of total OnStatus processing time per transaction (including retries), in seconds", + Buckets: []float64{.001, .005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10}, + NativeHistogramBucketFactor: 1.1, + NativeHistogramMaxBucketNumber: 100, }), } } diff --git a/token/services/ttx/metrics.go b/token/services/ttx/metrics.go index 6322b539b2..8a9ad3eccd 100644 --- a/token/services/ttx/metrics.go +++ b/token/services/ttx/metrics.go @@ -40,28 +40,28 @@ var ( LabelNames: []string{"network", "channel", "namespace"}, } endorsementDuration = metrics.HistogramOpts{ - Name: "endorsement_duration_seconds", - Help: "Duration of the full endorsement collection phase including signatures, audit, and chaincode approval.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, - NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, - NativeHistogramMaxBucketNumber: 100, + Name: "endorsement_duration_seconds", + Help: "Duration of the full endorsement collection phase including signatures, audit, and chaincode approval.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } auditApprovalDuration = metrics.HistogramOpts{ - Name: "audit_approval_duration_seconds", - Help: "Duration of the auditor approval phase including validation, append, and signing.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, - NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, - NativeHistogramMaxBucketNumber: 100, + Name: "audit_approval_duration_seconds", + Help: "Duration of the auditor approval phase including validation, append, and signing.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } orderingDuration = metrics.HistogramOpts{ - Name: "ordering_duration_seconds", - Help: "Duration of the transaction broadcast to the ordering service.", - LabelNames: []string{"network", "channel", "namespace"}, - Buckets: defaultDurationBuckets, - NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, - NativeHistogramMaxBucketNumber: 100, + Name: "ordering_duration_seconds", + Help: "Duration of the transaction broadcast to the ordering service.", + LabelNames: []string{"network", "channel", "namespace"}, + Buckets: defaultDurationBuckets, + NativeHistogramBucketFactor: defaultNativeHistogramBucketFactor, + NativeHistogramMaxBucketNumber: 100, } )