Merge pull request #120474 from YaoC/register-apiserver-handlers-metrics

Register metrics for apiserver handlers
This commit is contained in:
Kubernetes Prow Robot 2023-10-28 19:34:52 +02:00 committed by GitHub
commit 9482248aa9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View File

@ -18,8 +18,10 @@ package metrics
import ( import (
"context" "context"
"sync"
"k8s.io/component-base/metrics" "k8s.io/component-base/metrics"
"k8s.io/component-base/metrics/legacyregistry"
) )
type RequestBodyVerb string type RequestBodyVerb string
@ -47,6 +49,15 @@ var (
) )
) )
var registerMetrics sync.Once
// Register all metrics.
func Register() {
registerMetrics.Do(func() {
legacyregistry.MustRegister(RequestBodySizes)
})
}
func RecordRequestBodySize(ctx context.Context, resource string, verb RequestBodyVerb, size int) { func RecordRequestBodySize(ctx context.Context, resource string, verb RequestBodyVerb, size int) {
RequestBodySizes.WithContext(ctx).WithLabelValues(resource, string(verb)).Observe(float64(size)) RequestBodySizes.WithContext(ctx).WithLabelValues(resource, string(verb)).Observe(float64(size))
} }

View File

@ -17,6 +17,7 @@ limitations under the License.
package routes package routes
import ( import (
handlersmetrics "k8s.io/apiserver/pkg/endpoints/handlers/metrics"
apimetrics "k8s.io/apiserver/pkg/endpoints/metrics" apimetrics "k8s.io/apiserver/pkg/endpoints/metrics"
"k8s.io/apiserver/pkg/server/mux" "k8s.io/apiserver/pkg/server/mux"
cachermetrics "k8s.io/apiserver/pkg/storage/cacher/metrics" cachermetrics "k8s.io/apiserver/pkg/storage/cacher/metrics"
@ -52,4 +53,5 @@ func register() {
etcd3metrics.Register() etcd3metrics.Register()
flowcontrolmetrics.Register() flowcontrolmetrics.Register()
peerproxymetrics.Register() peerproxymetrics.Register()
handlersmetrics.Register()
} }