Change:
What would you like to be : We want to start migrating metrics which people depend on for operations to stable status. etcdobjectcounts was mentioned in a recent SIG meeting as a viable candidate. However, the 'etcd' prefix is not in line with stated metric conventions. SIG consensus determined that creating a new version of the metric with the metric name 'apiserverstorageobjectcounts' would be sufficient allow this metric to be promoted. We'd want to simultaneously deprecate 'etcdobjectcounts' (since it would be a duplicate) and remove it after the deprecation grace period window. /assign /cc
GitHub didn't allow me to assign the following users: erain. Note that only , repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time. For more information please see <detailsIn response to : What would you like to be : /cc Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/sig instrumentation api-machinery /cc
Ack. I am going to work on this.
/assign /triage accepted
In the SIG api-machinery meeting today, we agreed that the stable version of this metric should be named 'apiserverstorageobject_count'
Thanks and will use in the PR. (And sorry for missing today's meeting - due to a conflict)

Discussion:
}, []string{"operation", "type"}, ) <ins> 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"}, ) </ins> objectCounts = compbasemetrics.NewGaugeVec( &compbasemetrics.GaugeOpts{ <del> Name:           "etcd_object_counts", </del> <ins> Name:           "apiserver_storage_object_counts", </ins> Help:           "Number of stored objects at the time of last check split by kind.", <del> StabilityLevel: compbasemetrics.ALPHA, </del> <ins> StabilityLevel: compbasemetrics.STABLE, </ins> }, []string{"resource"}, )

registerMetrics.Do(func() { legacyregistry.MustRegister(etcdRequestLatency) legacyregistry.MustRegister(objectCounts) <ins> legacyregistry.MustRegister(etcdObjectCounts) </ins> legacyregistry.MustRegister(dbTotalSize) legacyregistry.MustRegister(etcdBookmarkCounts) legacyregistry.MustRegister(etcdLeaseObjectCounts) }) } <del> // UpdateObjectCount sets the etcd_object_counts metric. </del> <ins> // UpdateObjectCount sets the apiserver_storage_object_counts and etcd_object_counts (deprecated) metric. </ins> func UpdateObjectCount(resourcePrefix string, count int64) { objectCounts.WithLabelValues(resourcePrefix).Set(float64(count)) <ins> etcdObjectCounts.WithLabelValues(resourcePrefix).Set(float64(count)) </ins> } // RecordEtcdRequestLatency sets the etcd_request_duration_seconds metrics.

- subresource - verb - version <ins> - 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 </ins>