For each call, log apf_execution_time

Kubernetes-commit: 488a19184e847ed88e1cc81995fabfe1f88f5347
This commit is contained in:
Maciej Borsz 2022-03-29 14:55:52 +00:00 committed by Kubernetes Publisher
parent 85825e1b4d
commit d1014d8c99
1 changed files with 4 additions and 1 deletions

View File

@ -21,6 +21,7 @@ import (
"strconv" "strconv"
"time" "time"
"k8s.io/apiserver/pkg/server/httplog"
"k8s.io/apiserver/pkg/server/mux" "k8s.io/apiserver/pkg/server/mux"
fq "k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing" fq "k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing"
"k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/eventclock" "k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/eventclock"
@ -186,7 +187,9 @@ func (cfgCtlr *configController) Handle(ctx context.Context, requestDigest Reque
executed = true executed = true
startExecutionTime := time.Now() startExecutionTime := time.Now()
defer func() { defer func() {
metrics.ObserveExecutionDuration(ctx, pl.Name, fs.Name, time.Since(startExecutionTime)) executionTime := time.Since(startExecutionTime)
httplog.AddKeyValue(ctx, "apf_execution_time", executionTime)
metrics.ObserveExecutionDuration(ctx, pl.Name, fs.Name, executionTime)
}() }()
execFn() execFn()
}) })