in contrib/cmd/runkperf/commands/bench/utils.go [28:60]
func addAPIServerCoresInfoInterceptor(handler subcmdActionFunc) subcmdActionFunc {
return func(cliCtx *cli.Context) (*internaltypes.BenchmarkReport, error) {
ctx := context.Background()
kubeCfgPath := cliCtx.GlobalString("kubeconfig")
beforeCores, ferr := utils.FetchAPIServerCores(ctx, kubeCfgPath)
if ferr != nil {
log.GetLogger(ctx).
WithKeyValues("level", "warn").
LogKV("msg", "failed to fetch apiserver cores", "error", ferr)
}
report, err := handler(cliCtx)
if err != nil {
return nil, err
}
afterCores, ferr := utils.FetchAPIServerCores(ctx, kubeCfgPath)
if ferr != nil {
log.GetLogger(ctx).
WithKeyValues("level", "warn").
LogKV("msg", "failed to fetch apiserver cores", "error", ferr)
}
report.Info["apiserver"] = map[string]interface{}{
"cores": map[string]interface{}{
"before": beforeCores,
"after": afterCores,
},
}
return report, nil
}
}