Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
aos
GitHub Repository: aos/grafana-agent
Path: blob/main/pkg/integrations/windows_exporter/config_windows.go
5389 views
1
package windows_exporter //nolint:golint
2
3
import (
4
"github.com/alecthomas/kingpin/v2"
5
"github.com/prometheus-community/windows_exporter/collector"
6
)
7
8
// Populate defaults for all collector configs.
9
func init() {
10
// Register flags from all collector configs to a fake integration and then
11
// parse an empty command line to force defaults to be populated.
12
app := kingpin.New("", "")
13
14
// Register all flags from collector
15
collector.RegisterCollectorsFlags(app)
16
17
_, err := app.Parse([]string{})
18
if err != nil {
19
panic(err)
20
}
21
22
// Map the configs with defaults applied to our default config.
23
DefaultConfig.fromExporterConfig(app)
24
}
25
26
// fromExporterConfig converts windows_exporter configs into the integration Config.
27
func (c *Config) fromExporterConfig(app *kingpin.Application) {
28
c.Dfsr.SourcesEnabled = *app.GetFlag(collector.FlagDfsrEnabledCollectors).String()
29
c.Exchange.EnabledList = *app.GetFlag(collector.FlagExchangeCollectorsEnabled).String()
30
c.IIS.SiteBlackList = *app.GetFlag(collector.FlagIISSiteOldExclude).String()
31
c.IIS.SiteWhiteList = *app.GetFlag(collector.FlagIISSiteOldInclude).String()
32
c.IIS.AppBlackList = *app.GetFlag(collector.FlagIISAppOldExclude).String()
33
c.IIS.AppWhiteList = *app.GetFlag(collector.FlagIISAppOldInclude).String()
34
c.IIS.SiteExclude = *app.GetFlag(collector.FlagIISSiteExclude).String()
35
c.IIS.SiteInclude = *app.GetFlag(collector.FlagIISSiteInclude).String()
36
c.IIS.AppExclude = *app.GetFlag(collector.FlagIISAppExclude).String()
37
c.IIS.AppInclude = *app.GetFlag(collector.FlagIISAppInclude).String()
38
c.LogicalDisk.BlackList = *app.GetFlag(collector.FlagLogicalDiskVolumeOldExclude).String()
39
c.LogicalDisk.WhiteList = *app.GetFlag(collector.FlagLogicalDiskVolumeOldInclude).String()
40
c.LogicalDisk.Exclude = *app.GetFlag(collector.FlagLogicalDiskVolumeExclude).String()
41
c.LogicalDisk.Include = *app.GetFlag(collector.FlagLogicalDiskVolumeInclude).String()
42
c.MSMQ.Where = *app.GetFlag(collector.FlagMsmqWhereClause).String()
43
c.MSSQL.EnabledClasses = *app.GetFlag(collector.FlagMssqlEnabledCollectors).String()
44
c.Network.BlackList = *app.GetFlag(collector.FlagNicOldExclude).String()
45
c.Network.WhiteList = *app.GetFlag(collector.FlagNicOldInclude).String()
46
c.Network.Exclude = *app.GetFlag(collector.FlagNicExclude).String()
47
c.Network.Include = *app.GetFlag(collector.FlagNicInclude).String()
48
c.Process.BlackList = *app.GetFlag(collector.FlagProcessOldExclude).String()
49
c.Process.WhiteList = *app.GetFlag(collector.FlagProcessOldInclude).String()
50
c.Process.Exclude = *app.GetFlag(collector.FlagProcessExclude).String()
51
c.Process.Include = *app.GetFlag(collector.FlagProcessInclude).String()
52
c.ScheduledTask.Exclude = *app.GetFlag(collector.FlagScheduledTaskExclude).String()
53
c.ScheduledTask.Include = *app.GetFlag(collector.FlagScheduledTaskInclude).String()
54
c.Service.Where = *app.GetFlag(collector.FlagServiceWhereClause).String()
55
c.Service.UseApi = *app.GetFlag(collector.FlagServiceUseAPI).String()
56
c.SMTP.BlackList = *app.GetFlag(collector.FlagSmtpServerOldExclude).String()
57
c.SMTP.WhiteList = *app.GetFlag(collector.FlagSmtpServerOldInclude).String()
58
c.SMTP.Exclude = *app.GetFlag(collector.FlagSmtpServerExclude).String()
59
c.SMTP.Include = *app.GetFlag(collector.FlagSmtpServerInclude).String()
60
c.TextFile.TextFileDirectory = *app.GetFlag(collector.FlagTextFileDirectory).String()
61
}
62
63
// toExporterConfig converts integration Configs into windows_exporter configs.
64
func (c *Config) toExporterConfig(app *kingpin.Application) {
65
app.GetFlag(collector.FlagDfsrEnabledCollectors).StringVar(&c.Dfsr.SourcesEnabled)
66
app.GetFlag(collector.FlagExchangeCollectorsEnabled).StringVar(&c.Exchange.EnabledList)
67
app.GetFlag(collector.FlagIISSiteOldExclude).StringVar(&c.IIS.SiteBlackList)
68
app.GetFlag(collector.FlagIISSiteOldInclude).StringVar(&c.IIS.SiteWhiteList)
69
app.GetFlag(collector.FlagIISAppOldExclude).StringVar(&c.IIS.AppBlackList)
70
app.GetFlag(collector.FlagIISAppOldInclude).StringVar(&c.IIS.AppWhiteList)
71
app.GetFlag(collector.FlagIISSiteExclude).StringVar(&c.IIS.SiteExclude)
72
app.GetFlag(collector.FlagIISSiteInclude).StringVar(&c.IIS.SiteInclude)
73
app.GetFlag(collector.FlagIISAppExclude).StringVar(&c.IIS.AppExclude)
74
app.GetFlag(collector.FlagIISAppInclude).StringVar(&c.IIS.AppInclude)
75
app.GetFlag(collector.FlagLogicalDiskVolumeOldExclude).StringVar(&c.LogicalDisk.BlackList)
76
app.GetFlag(collector.FlagLogicalDiskVolumeOldInclude).StringVar(&c.LogicalDisk.WhiteList)
77
app.GetFlag(collector.FlagLogicalDiskVolumeExclude).StringVar(&c.LogicalDisk.Exclude)
78
app.GetFlag(collector.FlagLogicalDiskVolumeInclude).StringVar(&c.LogicalDisk.Include)
79
app.GetFlag(collector.FlagMsmqWhereClause).StringVar(&c.MSMQ.Where)
80
app.GetFlag(collector.FlagMssqlEnabledCollectors).StringVar(&c.MSSQL.EnabledClasses)
81
app.GetFlag(collector.FlagNicOldExclude).StringVar(&c.Network.BlackList)
82
app.GetFlag(collector.FlagNicOldInclude).StringVar(&c.Network.WhiteList)
83
app.GetFlag(collector.FlagNicExclude).StringVar(&c.Network.Exclude)
84
app.GetFlag(collector.FlagNicInclude).StringVar(&c.Network.Include)
85
app.GetFlag(collector.FlagProcessOldExclude).StringVar(&c.Process.BlackList)
86
app.GetFlag(collector.FlagProcessOldInclude).StringVar(&c.Process.WhiteList)
87
app.GetFlag(collector.FlagProcessExclude).StringVar(&c.Process.Exclude)
88
app.GetFlag(collector.FlagProcessInclude).StringVar(&c.Process.Include)
89
app.GetFlag(collector.FlagScheduledTaskExclude).StringVar(&c.Process.Exclude)
90
app.GetFlag(collector.FlagScheduledTaskInclude).StringVar(&c.Process.Include)
91
app.GetFlag(collector.FlagServiceWhereClause).StringVar(&c.Service.Where)
92
app.GetFlag(collector.FlagServiceUseAPI).StringVar(&c.Service.UseApi)
93
app.GetFlag(collector.FlagSmtpServerExclude).StringVar(&c.SMTP.Exclude)
94
app.GetFlag(collector.FlagNicInclude).StringVar(&c.SMTP.Include)
95
app.GetFlag(collector.FlagTextFileDirectory).StringVar(&c.TextFile.TextFileDirectory)
96
}
97
98