From bfdcfce28717db9722953f88d0779b2142bf5c06 Mon Sep 17 00:00:00 2001 From: Qiu Jian Date: Fri, 19 Aug 2022 10:38:00 +0800 Subject: [PATCH] fix(cloudmon): allow disable ping probe --- pkg/cloudmon/collectors/pinger.go | 3 +++ pkg/cloudmon/options/options.go | 2 ++ pkg/cloudmon/service/service.go | 4 +--- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkg/cloudmon/collectors/pinger.go b/pkg/cloudmon/collectors/pinger.go index 766a117245..37931c9749 100644 --- a/pkg/cloudmon/collectors/pinger.go +++ b/pkg/cloudmon/collectors/pinger.go @@ -71,6 +71,9 @@ func (self *SPingProbeColectorReport) Report() error { } func pingProbeColector(s *mcclient.ClientSession, args *options.ReportOptions) error { + if args.DisablePingProbe { + return nil + } isRoot := sysutils.IsRootPermission() if !isRoot { return errors.Error("require root permissions") diff --git a/pkg/cloudmon/options/options.go b/pkg/cloudmon/options/options.go index 545c2cd7d7..6960b57eae 100644 --- a/pkg/cloudmon/options/options.go +++ b/pkg/cloudmon/options/options.go @@ -64,6 +64,8 @@ type PingProbeOptions struct { Debug bool `help:"debug"` ProbeCount int `help:"probe count, default is 3" default:"3"` TimeoutSecond int `help:"probe timeout in second, default is 1 second" default:"1"` + + DisablePingProbe bool `help:"enable ping probe"` } func GetArgumentParser() (*structarg.ArgumentParser, error) { diff --git a/pkg/cloudmon/service/service.go b/pkg/cloudmon/service/service.go index b17c1b0565..7682b65caa 100644 --- a/pkg/cloudmon/service/service.go +++ b/pkg/cloudmon/service/service.go @@ -36,7 +36,7 @@ func StartService() { duration := time.Duration(opts.CloudproviderSyncInterval) * time.Minute log.Errorf("CloudproviderSyncInterval: %d", opts.CloudproviderSyncInterval) nextSync := time.Now() - for i, _ := range common.CustomizeMonTypeList { + for i := range common.CustomizeMonTypeList { monType := common.CustomizeMonTypeList[i] cutomizeOperatorChanmap[monType] = make(chan struct{}) cloudReportFactory, err := common.GetCloudReportFactory(monType) @@ -95,7 +95,6 @@ func getCloudproviderList(ctx context.Context) ([]jsonutils.JSONObject, error) { } cloudProviderList := make([]jsonutils.JSONObject, 0) for _, val := range common.SupportMetricBrands { - query.Add(jsonutils.NewString(val), "provider") tmpList, err := common.ListAllResources(&modules.Cloudproviders, session, query) if err != nil { @@ -126,5 +125,4 @@ func syncCloudproviderChanMap(cloudproviderList []jsonutils.JSONObject) []jsonut close(channel) } return newCloudprovider - }