add pprof option to metrics-adapter
Signed-off-by: chaosi-zju <chaosi@zju.edu.cn>
This commit is contained in:
parent
dca5c1abd7
commit
2bfaccf018
|
@ -33,6 +33,7 @@ import (
|
||||||
informerfactory "github.com/karmada-io/karmada/pkg/generated/informers/externalversions"
|
informerfactory "github.com/karmada-io/karmada/pkg/generated/informers/externalversions"
|
||||||
generatedopenapi "github.com/karmada-io/karmada/pkg/generated/openapi"
|
generatedopenapi "github.com/karmada-io/karmada/pkg/generated/openapi"
|
||||||
"github.com/karmada-io/karmada/pkg/metricsadapter"
|
"github.com/karmada-io/karmada/pkg/metricsadapter"
|
||||||
|
"github.com/karmada-io/karmada/pkg/sharedcli/profileflag"
|
||||||
"github.com/karmada-io/karmada/pkg/version"
|
"github.com/karmada-io/karmada/pkg/version"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -41,6 +42,8 @@ type Options struct {
|
||||||
CustomMetricsAdapterServerOptions *options.CustomMetricsAdapterServerOptions
|
CustomMetricsAdapterServerOptions *options.CustomMetricsAdapterServerOptions
|
||||||
|
|
||||||
KubeConfig string
|
KubeConfig string
|
||||||
|
|
||||||
|
ProfileOpts profileflag.Options
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewOptions builds a default metrics-adapter options.
|
// NewOptions builds a default metrics-adapter options.
|
||||||
|
@ -60,6 +63,7 @@ func (o *Options) Complete() error {
|
||||||
// AddFlags adds flags to the specified FlagSet.
|
// AddFlags adds flags to the specified FlagSet.
|
||||||
func (o *Options) AddFlags(fs *pflag.FlagSet) {
|
func (o *Options) AddFlags(fs *pflag.FlagSet) {
|
||||||
o.CustomMetricsAdapterServerOptions.AddFlags(fs)
|
o.CustomMetricsAdapterServerOptions.AddFlags(fs)
|
||||||
|
o.ProfileOpts.AddFlags(fs)
|
||||||
|
|
||||||
fs.StringVar(&o.KubeConfig, "kubeconfig", o.KubeConfig, "Path to karmada control plane kubeconfig file.")
|
fs.StringVar(&o.KubeConfig, "kubeconfig", o.KubeConfig, "Path to karmada control plane kubeconfig file.")
|
||||||
}
|
}
|
||||||
|
@ -113,6 +117,8 @@ func (o *Options) Config() (*metricsadapter.MetricsServer, error) {
|
||||||
func (o *Options) Run(ctx context.Context) error {
|
func (o *Options) Run(ctx context.Context) error {
|
||||||
klog.Infof("karmada-metrics-adapter version: %s", version.Get())
|
klog.Infof("karmada-metrics-adapter version: %s", version.Get())
|
||||||
|
|
||||||
|
profileflag.ListenAndServe(o.ProfileOpts)
|
||||||
|
|
||||||
metricsServer, err := o.Config()
|
metricsServer, err := o.Config()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
Loading…
Reference in New Issue