From 77950ba79b8b56bae34291093c69006975c7b775 Mon Sep 17 00:00:00 2001 From: Yu Yi Date: Thu, 4 Mar 2021 14:42:42 +0000 Subject: [PATCH] metrics: promote apiserver_storage_object_counts to stable - rename etcd_object_counts to apiserver_storage_object_counts CONTEXT https://github.com/kubernetes/kubernetes/issues/98270 FIXES https://github.com/kubernetes/kubernetes/issues/98270 --- .../pkg/storage/etcd3/metrics/metrics.go | 17 ++++++++++++++--- .../testdata/stable-metrics-list.yaml | 6 ++++++ 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/staging/src/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go b/staging/src/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go index 1ab266c8593..e83d87b411b 100644 --- a/staging/src/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go +++ b/staging/src/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go @@ -43,11 +43,20 @@ var ( }, []string{"operation", "type"}, ) + etcdObjectCounts = compbasemetrics.NewGaugeVec( + &compbasemetrics.GaugeOpts{ + Name: "etcd_object_counts", + DeprecatedVersion: "1.21.0", + Help: "Number of stored objects at the time of last check split by kind. This metric is replaced by apiserver_storage_object_counts.", + StabilityLevel: compbasemetrics.ALPHA, + }, + []string{"resource"}, + ) objectCounts = compbasemetrics.NewGaugeVec( &compbasemetrics.GaugeOpts{ - Name: "etcd_object_counts", + Name: "apiserver_storage_object_counts", Help: "Number of stored objects at the time of last check split by kind.", - StabilityLevel: compbasemetrics.ALPHA, + StabilityLevel: compbasemetrics.STABLE, }, []string{"resource"}, ) @@ -86,15 +95,17 @@ func Register() { registerMetrics.Do(func() { legacyregistry.MustRegister(etcdRequestLatency) legacyregistry.MustRegister(objectCounts) + legacyregistry.MustRegister(etcdObjectCounts) legacyregistry.MustRegister(dbTotalSize) legacyregistry.MustRegister(etcdBookmarkCounts) legacyregistry.MustRegister(etcdLeaseObjectCounts) }) } -// UpdateObjectCount sets the etcd_object_counts metric. +// UpdateObjectCount sets the apiserver_storage_object_counts and etcd_object_counts (deprecated) metric. func UpdateObjectCount(resourcePrefix string, count int64) { objectCounts.WithLabelValues(resourcePrefix).Set(float64(count)) + etcdObjectCounts.WithLabelValues(resourcePrefix).Set(float64(count)) } // RecordEtcdRequestLatency sets the etcd_request_duration_seconds metrics. diff --git a/test/instrumentation/testdata/stable-metrics-list.yaml b/test/instrumentation/testdata/stable-metrics-list.yaml index 2822711febf..04930d733f2 100644 --- a/test/instrumentation/testdata/stable-metrics-list.yaml +++ b/test/instrumentation/testdata/stable-metrics-list.yaml @@ -65,3 +65,9 @@ - subresource - verb - version +- name: apiserver_storage_object_counts + help: Number of stored objects at the time of last check split by kind. + type: Gauge + stabilityLevel: STABLE + labels: + - resource