Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Cmd = &cobra.Command{ Use: "run", Example: "run --config ./config/vigie.toml", Short: "Start Tests", PreRun: func(cmd *cobra.Command, args []string) { // // Create Vigie Instance // var err error vigieInstance, err = vigie.NewVigie() if err != nil { utils.Log.WithFields(logrus.Fields{"component": "vigie", "status": "error", "error": "Vigie cannot start"}).Fatal(err) os.Exit(1) } }, Run: func(cmd *cobra.Command, args []string) { vigieConf := loadVigieConfigFile(configfile) utils.InitLogger(vigieConf.Log) vigieConf.Host.AddHostSytemInfo() vigieInstance.HostInfo = vigieConf.Host _, err := govalidator.ValidateStruct(vigieConf) if err != nil { utils.Log.WithFields(logrus.Fields{"component": "configfile", "status": "invalid", "error": "Vigie Config File is invalid"}).Fatal(err) os.Exit(1) } utils.Log.WithFields(logrus.Fields{ "version": version.LdVersion, "goruntime": runtime.Version(), "arch": fmt.Sprintf("%s/%s", runtime.GOOS, runtime.GOARCH), "builddate": version.LdBuildDate, "configfile": configfile, }).Infof("Vigie") if vigieConf.API.Enable { errWebAPI := webapi.InitWebAPI(vigieConf.API, vigieInstance) if errWebAPI != nil { utils.Log.WithFields(logrus.Fields{"component": "api", "status": "failed", "error": errWebAPI}).Fatal("[ConfWebAPI] has failed to start") os.Exit(2) } } if vigieConf.InfluxDB.Enable { idb, errIDB := tsdb.NewInfluxDB(vigieConf.InfluxDB) if errIDB != nil { utils.Log.Fatal("Vigie failed to connect with InfluxDB: ", errIDB) } tsdb.TsdbManager.AddTsdb(idb) } if vigieConf.Warp10.Enable { w10, errW10 := tsdb.NewWarp10(vigieConf.Warp10) if errW10 != nil { utils.Log.Fatal("Vigie failed to connect with Warp10: ", errW10) } tsdb.TsdbManager.AddTsdb(w10) } if vigieConf.Prometheus.Enable { go promexporter.InitPromExporter(vigieConf.Prometheus) } if vigieConf.Alerting.Enable { go alertmanager.InitAlertManager(vigieConf.Alerting, vigieInstance.HostInfo.Name, vigieInstance.HostInfo.URL) } vigieInstance.ImportManager, err = load.InitImportManager(vigieConf.Import) if err != nil { utils.Log.WithFields(logrus.Fields{"component": "import", "status": "failed", "error": err}).Fatal("[ConfImport] fail to validate the import.") os.Exit(1) } core.VigieServer.CacheDNS, _ = dnscache.NewCachedResolver() err = vigieInstance.Start() if err != nil { utils.Log.Fatal("Vigie failed to launch: ", err) os.Exit(1) } }, }
Cmd run
Functions ¶
This section is empty.
Types ¶
type VigieConf ¶
type VigieConf struct { ApiVersion float32 Environment string // Production, Dev Host vigie.HostInfo Import load.ConfImport API webapi.ConfWebAPI Prometheus promexporter.ConfPrometheus InfluxDB tsdb.ConfInfluxDB Warp10 tsdb.ConfWarp10 Datadog tsdb.ConfDatadog Alerting alertmanager.ConfAlerting Log utils.LogConf }
Click to show internal directories.
Click to hide internal directories.