mirror of
				https://github.com/prometheus/node_exporter.git
				synced 2025-08-20 18:33:52 -07:00 
			
		
		
		
	use pointers
This commit is contained in:
		
							parent
							
								
									d59d6568c6
								
							
						
					
					
						commit
						c01a7c2c57
					
				|  | @ -33,7 +33,7 @@ type arpCollector struct { | |||
| 	deviceFilter deviceFilter | ||||
| 	entries      *prometheus.Desc | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -47,7 +47,7 @@ type ArpConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewARPCollector returns a new Collector exposing ARP stats.
 | ||||
| func NewARPCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewARPCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ func init() { | |||
| type bcacheCollector struct { | ||||
| 	fs     bcache.FS | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type BcacheConfig struct { | ||||
|  | @ -42,7 +42,7 @@ type BcacheConfig struct { | |||
| 
 | ||||
| // NewBcacheCollector returns a newly allocated bcacheCollector.
 | ||||
| // It exposes a number of Linux bcache statistics.
 | ||||
| func NewBcacheCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewBcacheCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := bcache.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -31,7 +31,7 @@ import ( | |||
| type bondingCollector struct { | ||||
| 	slaves, active typedDesc | ||||
| 	logger         log.Logger | ||||
| 	config         NodeCollectorConfig | ||||
| 	config         *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -40,7 +40,7 @@ func init() { | |||
| 
 | ||||
| // NewBondingCollector returns a newly allocated bondingCollector.
 | ||||
| // It exposes the number of configured and active slave of linux bonding interfaces.
 | ||||
| func NewBondingCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewBondingCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &bondingCollector{ | ||||
| 		slaves: typedDesc{prometheus.NewDesc( | ||||
| 			prometheus.BuildFQName(namespace, "bonding", "slaves"), | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // newBootTimeCollector returns a new Collector exposing system boot time on BSD systems.
 | ||||
| func newBootTimeCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func newBootTimeCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &bootTimeCollector{ | ||||
| 		logger: logger, | ||||
| 	}, nil | ||||
|  |  | |||
|  | @ -31,7 +31,7 @@ func init() { | |||
| 	registerCollector("boottime", defaultEnabled, newBootTimeCollector) | ||||
| } | ||||
| 
 | ||||
| func newBootTimeCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func newBootTimeCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &bootTimeCollector{ | ||||
| 		boottime: typedDesc{ | ||||
| 			prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ import ( | |||
| type btrfsCollector struct { | ||||
| 	fs     btrfs.FS | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -41,7 +41,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewBtrfsCollector returns a new Collector exposing Btrfs statistics.
 | ||||
| func NewBtrfsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewBtrfsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := btrfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -41,7 +41,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewBuddyinfoCollector returns a new Collector exposing buddyinfo stats.
 | ||||
| func NewBuddyinfoCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewBuddyinfoCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	desc := prometheus.NewDesc( | ||||
| 		prometheus.BuildFQName(namespace, buddyInfoSubsystem, "blocks"), | ||||
| 		"Count of free blocks according to size.", | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewCgroupSummaryCollector returns a new Collector exposing a summary of cgroups.
 | ||||
| func NewCgroupSummaryCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCgroupSummaryCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -50,14 +50,14 @@ const ( | |||
| ) | ||||
| 
 | ||||
| var ( | ||||
| 	factories              = make(map[string]func(config NodeCollectorConfig, logger log.Logger) (Collector, error)) | ||||
| 	factories              = make(map[string]func(config *NodeCollectorConfig, logger log.Logger) (Collector, error)) | ||||
| 	initiatedCollectorsMtx = sync.Mutex{} | ||||
| 	initiatedCollectors    = make(map[string]Collector) | ||||
| 	collectorState         = make(map[string]*bool) | ||||
| 	forcedCollectors       = map[string]bool{} // collectors which have been explicitly enabled or disabled
 | ||||
| ) | ||||
| 
 | ||||
| func registerCollector(collector string, isDefaultEnabled bool, factory func(config NodeCollectorConfig, logger log.Logger) (Collector, error)) { | ||||
| func registerCollector(collector string, isDefaultEnabled bool, factory func(config *NodeCollectorConfig, logger log.Logger) (Collector, error)) { | ||||
| 	var helpDefaultState string | ||||
| 	if isDefaultEnabled { | ||||
| 		helpDefaultState = "enabled" | ||||
|  | @ -104,7 +104,7 @@ func collectorFlagAction(collector string) func(ctx *kingpin.ParseContext) error | |||
| } | ||||
| 
 | ||||
| // NewNodeCollector creates a new NodeCollector.
 | ||||
| func NewNodeCollector(config NodeCollectorConfig, logger log.Logger, filters ...string) (*NodeCollector, error) { | ||||
| func NewNodeCollector(config *NodeCollectorConfig, logger log.Logger, filters ...string) (*NodeCollector, error) { | ||||
| 	f := make(map[string]bool) | ||||
| 	for _, filter := range filters { | ||||
| 		enabled, exist := collectorState[filter] | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ type conntrackCollector struct { | |||
| 	earlyDrop     *prometheus.Desc | ||||
| 	searchRestart *prometheus.Desc | ||||
| 	logger        log.Logger | ||||
| 	config        NodeCollectorConfig | ||||
| 	config        *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type conntrackStatistics struct { | ||||
|  | @ -58,7 +58,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewConntrackCollector returns a new Collector exposing conntrack stats.
 | ||||
| func NewConntrackCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewConntrackCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &conntrackCollector{ | ||||
| 		current: prometheus.NewDesc( | ||||
| 			prometheus.BuildFQName(namespace, "", "nf_conntrack_entries"), | ||||
|  | @ -162,7 +162,7 @@ func (c *conntrackCollector) handleErr(err error) error { | |||
| 	return fmt.Errorf("failed to retrieve conntrack stats: %w", err) | ||||
| } | ||||
| 
 | ||||
| func getConntrackStatistics(config NodeCollectorConfig) (*conntrackStatistics, error) { | ||||
| func getConntrackStatistics(config *NodeCollectorConfig) (*conntrackStatistics, error) { | ||||
| 	c := conntrackStatistics{} | ||||
| 
 | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
|  |  | |||
|  | @ -61,7 +61,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewCPUCollector returns a new Collector exposing CPU stats.
 | ||||
| func NewCPUCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCPUCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &statCollector{ | ||||
| 		cpu:    nodeCPUSecondsDesc, | ||||
| 		logger: logger, | ||||
|  |  | |||
|  | @ -86,7 +86,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewStatCollector returns a new Collector exposing CPU stats.
 | ||||
| func NewStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &statCollector{ | ||||
| 		cpu:    nodeCPUSecondsDesc, | ||||
| 		logger: logger, | ||||
|  |  | |||
|  | @ -93,7 +93,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewStatCollector returns a new Collector exposing CPU stats.
 | ||||
| func NewStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &statCollector{ | ||||
| 		cpu: typedDesc{nodeCPUSecondsDesc, prometheus.CounterValue}, | ||||
| 		temp: typedDesc{prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -52,7 +52,7 @@ type cpuCollector struct { | |||
| 	cpuFlagsIncludeRegexp *regexp.Regexp | ||||
| 	cpuBugsIncludeRegexp  *regexp.Regexp | ||||
| 
 | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| // Idle jump back limit in seconds.
 | ||||
|  | @ -74,7 +74,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewCPUCollector returns a new Collector exposing kernel/system statistics.
 | ||||
| func NewCPUCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCPUCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  | @ -254,7 +254,7 @@ func updateFieldInfo(valueList []string, filter *regexp.Regexp, desc *prometheus | |||
| } | ||||
| 
 | ||||
| // updateThermalThrottle reads /sys/devices/system/cpu/cpu* and expose thermal throttle statistics.
 | ||||
| func (c *cpuCollector) updateThermalThrottle(config NodeCollectorConfig, ch chan<- prometheus.Metric) error { | ||||
| func (c *cpuCollector) updateThermalThrottle(config *NodeCollectorConfig, ch chan<- prometheus.Metric) error { | ||||
| 	cpus, err := filepath.Glob(config.Path.sysFilePath("devices/system/cpu/cpu[0-9]*")) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
|  |  | |||
|  | @ -222,7 +222,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewStatCollector returns a new Collector exposing CPU stats.
 | ||||
| func NewStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &statCollector{ | ||||
| 		cpu: typedDesc{nodeCPUSecondsDesc, prometheus.CounterValue}, | ||||
| 		temp: typedDesc{prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -52,7 +52,7 @@ func init() { | |||
| 	registerCollector("cpu", defaultEnabled, NewCPUCollector) | ||||
| } | ||||
| 
 | ||||
| func NewCPUCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCPUCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &cpuCollector{ | ||||
| 		cpu:    typedDesc{nodeCPUSecondsDesc, prometheus.CounterValue}, | ||||
| 		logger: logger, | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ func init() { | |||
| 	registerCollector("cpu", defaultEnabled, NewCpuCollector) | ||||
| } | ||||
| 
 | ||||
| func NewCpuCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCpuCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &cpuCollector{ | ||||
| 		cpu:    typedDesc{nodeCPUSecondsDesc, prometheus.CounterValue}, | ||||
| 		logger: logger, | ||||
|  |  | |||
|  | @ -35,14 +35,14 @@ var ( | |||
| ) | ||||
| 
 | ||||
| type cpuVulnerabilitiesCollector struct { | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
| 	registerCollector(cpuVulerabilitiesCollector, defaultDisabled, NewVulnerabilitySysfsCollector) | ||||
| } | ||||
| 
 | ||||
| func NewVulnerabilitySysfsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewVulnerabilitySysfsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &cpuVulnerabilitiesCollector{config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewCPUFreqCollector returns a new Collector exposing kernel/system statistics.
 | ||||
| func NewCPUFreqCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCPUFreqCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ func init() { | |||
| 	registerCollector("cpufreq", defaultEnabled, NewCPUFreqCollector) | ||||
| } | ||||
| 
 | ||||
| func NewCpuFreqCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewCpuFreqCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &cpuFreqCollector{ | ||||
| 		logger: logger, | ||||
| 	}, nil | ||||
|  |  | |||
|  | @ -106,7 +106,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDevstatCollector returns a new Collector exposing Device stats.
 | ||||
| func NewDevstatCollector(config NodeCollectorConfiglogger log.Logger) (Collector, error) { | ||||
| func NewDevstatCollector(config  *NodeCollectorConfiglogger log.Logger) (Collector, error) { | ||||
| 	return &devstatCollector{ | ||||
| 		bytesDesc: prometheus.NewDesc( | ||||
| 			prometheus.BuildFQName(namespace, devstatSubsystem, "bytes_total"), | ||||
|  |  | |||
|  | @ -51,7 +51,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDevstatCollector returns a new Collector exposing Device stats.
 | ||||
| func NewDevstatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDevstatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &devstatCollector{ | ||||
| 		devinfo: &C.struct_devinfo{}, | ||||
| 		bytes: typedDesc{prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -43,7 +43,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDiskstatsCollector returns a new Collector exposing disk device stats.
 | ||||
| func NewDiskstatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDiskstatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var diskLabelNames = []string{"device"} | ||||
| 
 | ||||
| 	deviceFilter, err := newDiskstatsDeviceFilter(config.DiskstatsDeviceFilter, logger) | ||||
|  |  | |||
|  | @ -86,8 +86,8 @@ type diskstatsCollector struct { | |||
| 	deviceMapperInfoDesc    typedFactorDesc | ||||
| 	ataDescs                map[string]typedFactorDesc | ||||
| 	logger                  log.Logger | ||||
| 	getUdevDeviceProperties func(NodeCollectorConfig, uint32, uint32) (udevInfo, error) | ||||
| 	config                  NodeCollectorConfig | ||||
| 	getUdevDeviceProperties func(*NodeCollectorConfig, uint32, uint32) (udevInfo, error) | ||||
| 	config                  *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -96,7 +96,7 @@ func init() { | |||
| 
 | ||||
| // NewDiskstatsCollector returns a new Collector exposing disk device stats.
 | ||||
| // Docs from https://www.kernel.org/doc/Documentation/iostats.txt
 | ||||
| func NewDiskstatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDiskstatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var diskLabelNames = []string{"device"} | ||||
| 	fs, err := blockdevice.NewFS(*config.Path.ProcPath, *config.Path.SysPath) | ||||
| 	if err != nil { | ||||
|  | @ -372,7 +372,7 @@ func (c *diskstatsCollector) Update(ch chan<- prometheus.Metric) error { | |||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| func getUdevDeviceProperties(config NodeCollectorConfig, major, minor uint32) (udevInfo, error) { | ||||
| func getUdevDeviceProperties(config *NodeCollectorConfig, major, minor uint32) (udevInfo, error) { | ||||
| 	filename := config.Path.udevDataFilePath(fmt.Sprintf("b%d:%d", major, minor)) | ||||
| 
 | ||||
| 	data, err := os.Open(filename) | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ func (c testDiskStatsCollector) Describe(ch chan<- *prometheus.Desc) { | |||
| 	prometheus.DescribeByCollect(c, ch) | ||||
| } | ||||
| 
 | ||||
| func NewTestDiskStatsCollector(config NodeCollectorConfig, logger log.Logger) (prometheus.Collector, error) { | ||||
| func NewTestDiskStatsCollector(config *NodeCollectorConfig, logger log.Logger) (prometheus.Collector, error) { | ||||
| 	dsc, err := NewDiskstatsCollector(config, logger) | ||||
| 	if err != nil { | ||||
| 		return testDiskStatsCollector{}, err | ||||
|  | @ -50,7 +50,7 @@ func NewTestDiskStatsCollector(config NodeCollectorConfig, logger log.Logger) (p | |||
| } | ||||
| 
 | ||||
| func TestDiskStats(t *testing.T) { | ||||
| 	config := NodeCollectorConfig{ | ||||
| 	config := &NodeCollectorConfig{ | ||||
| 		DiskstatsDeviceFilter: DiskstatsDeviceFilterConfig{ | ||||
| 			DeviceExclude:    new(string), | ||||
| 			DeviceInclude:    new(string), | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDiskstatsCollector returns a new Collector exposing disk device stats.
 | ||||
| func NewDiskstatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDiskstatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	deviceFilter, err := newDiskstatsDeviceFilter(config.DiskstatsDeviceFilter, logger) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to parse device filter flags: %w", err) | ||||
|  |  | |||
|  | @ -60,7 +60,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDiskstatsCollector returns a new Collector exposing disk device stats.
 | ||||
| func NewDiskstatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDiskstatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	deviceFilter, err := newDiskstatsDeviceFilter(config.DiskstatsDeviceFilter, logger) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to parse device filter flags: %w", err) | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDMICollector returns a new Collector exposing DMI information.
 | ||||
| func NewDMICollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDMICollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -80,14 +80,14 @@ type drbdCollector struct { | |||
| 	stringPair map[string]drbdStringPairMetric | ||||
| 	connected  *prometheus.Desc | ||||
| 	logger     log.Logger | ||||
| 	config     NodeCollectorConfig | ||||
| 	config     *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
| 	registerCollector("drbd", defaultDisabled, newDRBDCollector) | ||||
| } | ||||
| 
 | ||||
| func newDRBDCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func newDRBDCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &drbdCollector{ | ||||
| 		numerical: map[string]drbdNumericalMetric{ | ||||
| 			"ns": newDRBDNumericalMetric( | ||||
|  |  | |||
|  | @ -46,7 +46,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewDrmCollector returns a new Collector exposing /sys/class/drm/card?/device stats.
 | ||||
| func NewDrmCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewDrmCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ type edacCollector struct { | |||
| 	csRowCECount *prometheus.Desc | ||||
| 	csRowUECount *prometheus.Desc | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -48,7 +48,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewEdacCollector returns a new Collector exposing edac stats.
 | ||||
| func NewEdacCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewEdacCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &edacCollector{ | ||||
| 		ceCount: prometheus.NewDesc( | ||||
| 			prometheus.BuildFQName(namespace, edacSubsystem, "correctable_errors_total"), | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewEntropyCollector returns a new Collector exposing entropy stats.
 | ||||
| func NewEntropyCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewEntropyCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -87,7 +87,7 @@ type EthtoolConfig struct { | |||
| // makeEthtoolCollector is the internal constructor for EthtoolCollector.
 | ||||
| // This allows NewEthtoolTestCollector to override its .ethtool interface
 | ||||
| // for testing.
 | ||||
| func makeEthtoolCollector(config NodeCollectorConfig, logger log.Logger) (*ethtoolCollector, error) { | ||||
| func makeEthtoolCollector(config *NodeCollectorConfig, logger log.Logger) (*ethtoolCollector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  | @ -215,7 +215,7 @@ func buildEthtoolFQName(metric string) string { | |||
| } | ||||
| 
 | ||||
| // NewEthtoolCollector returns a new Collector exposing ethtool stats.
 | ||||
| func NewEthtoolCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewEthtoolCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return makeEthtoolCollector(config, logger) | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ func (c testEthtoolCollector) Describe(ch chan<- *prometheus.Desc) { | |||
| 	prometheus.DescribeByCollect(c, ch) | ||||
| } | ||||
| 
 | ||||
| func NewTestEthtoolCollector(config NodeCollectorConfig, logger log.Logger) (prometheus.Collector, error) { | ||||
| func NewTestEthtoolCollector(config *NodeCollectorConfig, logger log.Logger) (prometheus.Collector, error) { | ||||
| 	dsc, err := NewEthtoolTestCollector(config, logger) | ||||
| 	if err != nil { | ||||
| 		return testEthtoolCollector{}, err | ||||
|  | @ -255,7 +255,7 @@ func (e *EthtoolFixture) LinkInfo(intf string) (ethtool.EthtoolCmd, error) { | |||
| 	return res, err | ||||
| } | ||||
| 
 | ||||
| func NewEthtoolTestCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewEthtoolTestCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	collector, err := makeEthtoolCollector(config, logger) | ||||
| 	collector.ethtool = &EthtoolFixture{ | ||||
| 		fixturePath: "fixtures/ethtool/", | ||||
|  | @ -285,7 +285,7 @@ func TestBuildEthtoolFQName(t *testing.T) { | |||
| } | ||||
| 
 | ||||
| func TestEthToolCollector(t *testing.T) { | ||||
| 	config := NodeCollectorConfig{ | ||||
| 	config := &NodeCollectorConfig{ | ||||
| 		Ethtool: EthtoolConfig{ | ||||
| 			DeviceInclude:   new(string), | ||||
| 			DeviceExclude:   new(string), | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewExecCollector returns a new Collector exposing system execution statistics.
 | ||||
| func NewExecCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewExecCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	// From sys/vm/vm_meter.c:
 | ||||
| 	// All are of type CTLTYPE_UINT.
 | ||||
| 	//
 | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewFibreChannelCollector returns a new Collector exposing FibreChannel stats.
 | ||||
| func NewFibreChannelCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewFibreChannelCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var i fibrechannelCollector | ||||
| 	var err error | ||||
| 
 | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ const ( | |||
| 
 | ||||
| type fileFDStatCollector struct { | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -41,7 +41,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewFileFDStatCollector returns a new Collector exposing file-nr stats.
 | ||||
| func NewFileFDStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewFileFDStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &fileFDStatCollector{logger, config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -44,7 +44,7 @@ type filesystemCollector struct { | |||
| 	filesDesc, filesFreeDesc      *prometheus.Desc | ||||
| 	roDesc, deviceErrorDesc       *prometheus.Desc | ||||
| 	logger                        log.Logger | ||||
| 	config                        NodeCollectorConfig | ||||
| 	config                        *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type filesystemLabels struct { | ||||
|  | @ -73,7 +73,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewFilesystemCollector returns a new Collector exposing filesystems stats.
 | ||||
| func NewFilesystemCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewFilesystemCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	if *config.Filesystem.OldMountPointsExcluded != "" { | ||||
| 		if !config.Filesystem.MountPointsExcludeSet { | ||||
| 			level.Warn(logger).Log("msg", "--collector.filesystem.ignored-mount-points is DEPRECATED and will be removed in 2.0.0, use --collector.filesystem.mount-points-exclude") | ||||
|  |  | |||
|  | @ -168,7 +168,7 @@ func stuckMountWatcher(mountTimeout *time.Duration, mountPoint string, success c | |||
| 	} | ||||
| } | ||||
| 
 | ||||
| func mountPointDetails(config NodeCollectorConfig, logger log.Logger) ([]filesystemLabels, error) { | ||||
| func mountPointDetails(config *NodeCollectorConfig, logger log.Logger) ([]filesystemLabels, error) { | ||||
| 	file, err := os.Open(config.Path.procFilePath("1/mounts")) | ||||
| 	if errors.Is(err, os.ErrNotExist) { | ||||
| 		// Fallback to `/proc/mounts` if `/proc/1/mounts` is missing due hidepid.
 | ||||
|  | @ -183,7 +183,7 @@ func mountPointDetails(config NodeCollectorConfig, logger log.Logger) ([]filesys | |||
| 	return parseFilesystemLabels(config, file) | ||||
| } | ||||
| 
 | ||||
| func parseFilesystemLabels(config NodeCollectorConfig, r io.Reader) ([]filesystemLabels, error) { | ||||
| func parseFilesystemLabels(config *NodeCollectorConfig, r io.Reader) ([]filesystemLabels, error) { | ||||
| 	var filesystems []filesystemLabels | ||||
| 
 | ||||
| 	scanner := bufio.NewScanner(r) | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ import ( | |||
| ) | ||||
| 
 | ||||
| func Test_parseFilesystemLabelsError(t *testing.T) { | ||||
| 	config := NodeCollectorConfig{} | ||||
| 	config := &NodeCollectorConfig{} | ||||
| 	tests := []struct { | ||||
| 		name string | ||||
| 		in   string | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ func init() { | |||
| type hwMonCollector struct { | ||||
| 	deviceFilter deviceFilter | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type HwMonConfig struct { | ||||
|  | @ -59,7 +59,7 @@ type HwMonConfig struct { | |||
| 
 | ||||
| // NewHwMonCollector returns a new Collector exposing /sys/class/hwmon stats
 | ||||
| // (similar to lm-sensors).
 | ||||
| func NewHwMonCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewHwMonCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 
 | ||||
| 	return &hwMonCollector{ | ||||
| 		logger:       logger, | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewInfiniBandCollector returns a new Collector exposing InfiniBand stats.
 | ||||
| func NewInfiniBandCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewInfiniBandCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var i infinibandCollector | ||||
| 	var err error | ||||
| 
 | ||||
|  |  | |||
|  | @ -25,7 +25,7 @@ import ( | |||
| type interruptsCollector struct { | ||||
| 	desc   typedDesc | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -33,7 +33,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewInterruptsCollector returns a new Collector exposing interrupts stats.
 | ||||
| func NewInterruptsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewInterruptsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &interruptsCollector{ | ||||
| 		desc: typedDesc{prometheus.NewDesc( | ||||
| 			namespace+"_interrupts_total", | ||||
|  |  | |||
|  | @ -55,7 +55,7 @@ type interrupt struct { | |||
| 	values  []string | ||||
| } | ||||
| 
 | ||||
| func getInterrupts(config NodeCollectorConfig) (map[string]interrupt, error) { | ||||
| func getInterrupts(config *NodeCollectorConfig) (map[string]interrupt, error) { | ||||
| 	file, err := os.Open(config.Path.procFilePath("interrupts")) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
|  |  | |||
|  | @ -75,11 +75,11 @@ type IPVSConfig struct { | |||
| 
 | ||||
| // NewIPVSCollector sets up a new collector for IPVS metrics. It accepts the
 | ||||
| // "procfs" config parameter to override the default proc location (/proc).
 | ||||
| func NewIPVSCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewIPVSCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return newIPVSCollector(config, logger) | ||||
| } | ||||
| 
 | ||||
| func newIPVSCollector(config NodeCollectorConfig, logger log.Logger) (*ipvsCollector, error) { | ||||
| func newIPVSCollector(config *NodeCollectorConfig, logger log.Logger) (*ipvsCollector, error) { | ||||
| 	var ( | ||||
| 		c         ipvsCollector | ||||
| 		err       error | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ var ( | |||
| type ksmdCollector struct { | ||||
| 	metricDescs map[string]*prometheus.Desc | ||||
| 	logger      log.Logger | ||||
| 	config      NodeCollectorConfig | ||||
| 	config      *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -51,7 +51,7 @@ func getCanonicalMetricName(filename string) string { | |||
| } | ||||
| 
 | ||||
| // NewKsmdCollector returns a new Collector exposing kernel/system statistics.
 | ||||
| func NewKsmdCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewKsmdCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	subsystem := "ksmd" | ||||
| 	descs := make(map[string]*prometheus.Desc) | ||||
| 
 | ||||
|  |  | |||
|  | @ -27,14 +27,14 @@ import ( | |||
| 
 | ||||
| type lnstatCollector struct { | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
| 	registerCollector("lnstat", defaultDisabled, NewLnstatCollector) | ||||
| } | ||||
| 
 | ||||
| func NewLnstatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewLnstatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &lnstatCollector{logger, config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -28,7 +28,7 @@ import ( | |||
| type loadavgCollector struct { | ||||
| 	metric []typedDesc | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -36,7 +36,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewLoadavgCollector returns a new Collector exposing load average stats.
 | ||||
| func NewLoadavgCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewLoadavgCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &loadavgCollector{ | ||||
| 		metric: []typedDesc{ | ||||
| 			{prometheus.NewDesc(namespace+"_load1", "1m load average.", nil, nil), prometheus.GaugeValue}, | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ import ( | |||
| ) | ||||
| 
 | ||||
| // Read loadavg from /proc.
 | ||||
| func getLoad(config NodeCollectorConfig) (loads []float64, err error) { | ||||
| func getLoad(config *NodeCollectorConfig) (loads []float64, err error) { | ||||
| 	data, err := os.ReadFile(config.Path.procFilePath("loadavg")) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
|  | @ -37,7 +37,7 @@ func getLoad(config NodeCollectorConfig) (loads []float64, err error) { | |||
| } | ||||
| 
 | ||||
| // Parse /proc loadavg and return 1m, 5m and 15m.
 | ||||
| func parseLoad(config NodeCollectorConfig, data string) (loads []float64, err error) { | ||||
| func parseLoad(config *NodeCollectorConfig, data string) (loads []float64, err error) { | ||||
| 	loads = make([]float64, 3) | ||||
| 	parts := strings.Fields(data) | ||||
| 	if len(parts) < 3 { | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ package collector | |||
| import "testing" | ||||
| 
 | ||||
| func TestLoad(t *testing.T) { | ||||
| 	config := NodeCollectorConfig{} | ||||
| 	config := &NodeCollectorConfig{} | ||||
| 
 | ||||
| 	want := []float64{0.21, 0.37, 0.39} | ||||
| 	loads, err := parseLoad(config, "0.21 0.37 0.39 1/719 19737") | ||||
|  |  | |||
|  | @ -86,7 +86,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewLogindCollector returns a new Collector exposing logind statistics.
 | ||||
| func NewLogindCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewLogindCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &logindCollector{logger}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -29,7 +29,7 @@ import ( | |||
| 
 | ||||
| type mdadmCollector struct { | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -37,7 +37,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewMdadmCollector returns a new Collector exposing raid statistics.
 | ||||
| func NewMdadmCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewMdadmCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &mdadmCollector{logger, config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ const ( | |||
| 
 | ||||
| type meminfoCollector struct { | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -40,7 +40,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewMeminfoCollector returns a new Collector exposing memory stats.
 | ||||
| func NewMeminfoCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewMeminfoCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &meminfoCollector{logger, config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -46,7 +46,7 @@ type meminfoMetric struct { | |||
| type meminfoNumaCollector struct { | ||||
| 	metricDescs map[string]*prometheus.Desc | ||||
| 	logger      log.Logger | ||||
| 	config      NodeCollectorConfig | ||||
| 	config      *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -54,7 +54,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewMeminfoNumaCollector returns a new Collector exposing memory stats.
 | ||||
| func NewMeminfoNumaCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewMeminfoNumaCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &meminfoNumaCollector{ | ||||
| 		metricDescs: map[string]*prometheus.Desc{}, | ||||
| 		logger:      logger, | ||||
|  | @ -81,7 +81,7 @@ func (c *meminfoNumaCollector) Update(ch chan<- prometheus.Metric) error { | |||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| func getMemInfoNuma(config NodeCollectorConfig) ([]meminfoMetric, error) { | ||||
| func getMemInfoNuma(config *NodeCollectorConfig) ([]meminfoMetric, error) { | ||||
| 	var ( | ||||
| 		metrics []meminfoMetric | ||||
| 	) | ||||
|  |  | |||
|  | @ -41,7 +41,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewMemoryCollector returns a new Collector exposing memory stats.
 | ||||
| func NewMemoryCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewMemoryCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	tmp32, err := unix.SysctlUint32("vm.stats.vm.v_page_size") | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("sysctl(vm.stats.vm.v_page_size) failed: %w", err) | ||||
|  |  | |||
|  | @ -111,7 +111,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewMountStatsCollector returns a new Collector exposing NFS statistics.
 | ||||
| func NewMountStatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewMountStatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ type netClassCollector struct { | |||
| 	ignoredDevicesPattern *regexp.Regexp | ||||
| 	metricDescs           map[string]*prometheus.Desc | ||||
| 	logger                log.Logger | ||||
| 	config                NodeCollectorConfig | ||||
| 	config                *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -50,7 +50,7 @@ type NetClassConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewNetClassCollector returns a new Collector exposing network class stats.
 | ||||
| func NewNetClassCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNetClassCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ type netDevCollector struct { | |||
| 	metricDescsMutex sync.Mutex | ||||
| 	metricDescs      map[string]*prometheus.Desc | ||||
| 	logger           log.Logger | ||||
| 	config           NodeCollectorConfig | ||||
| 	config           *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type netDevStats map[string]map[string]uint64 | ||||
|  | @ -55,7 +55,7 @@ type NetDevConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewNetDevCollector returns a new Collector exposing network device stats.
 | ||||
| func NewNetDevCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNetDevCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	if *config.NetDev.OldDeviceInclude != "" { | ||||
| 		if *config.NetDev.DeviceInclude == "" { | ||||
| 			level.Warn(logger).Log("msg", "--collector.netdev.device-whitelist is DEPRECATED and will be removed in 2.0.0, use --collector.netdev.device-include") | ||||
|  |  | |||
|  | @ -25,7 +25,7 @@ import ( | |||
| 	"github.com/prometheus/procfs" | ||||
| ) | ||||
| 
 | ||||
| func getNetDevStats(config NodeCollectorConfig, netDevNetlink *bool, filter *deviceFilter, logger log.Logger) (netDevStats, error) { | ||||
| func getNetDevStats(config *NodeCollectorConfig, netDevNetlink *bool, filter *deviceFilter, logger log.Logger) (netDevStats, error) { | ||||
| 	if *netDevNetlink { | ||||
| 		return netlinkStats(filter, logger) | ||||
| 	} | ||||
|  | @ -136,7 +136,7 @@ func parseNetlinkStats(links []rtnetlink.LinkMessage, filter *deviceFilter, logg | |||
| 	return metrics | ||||
| } | ||||
| 
 | ||||
| func procNetDevStats(config NodeCollectorConfig, filter *deviceFilter, logger log.Logger) (netDevStats, error) { | ||||
| func procNetDevStats(config *NodeCollectorConfig, filter *deviceFilter, logger log.Logger) (netDevStats, error) { | ||||
| 	metrics := netDevStats{} | ||||
| 
 | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ func init() { | |||
| 	registerCollector("netisr", defaultEnabled, NewNetisrCollector) | ||||
| } | ||||
| 
 | ||||
| func NewNetisrCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNetisrCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &netisrCollector{ | ||||
| 		sysctls: []bsdSysctl{ | ||||
| 			{ | ||||
|  |  | |||
|  | @ -37,7 +37,7 @@ const ( | |||
| type netStatCollector struct { | ||||
| 	fieldPattern *regexp.Regexp | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -50,7 +50,7 @@ type NetStatConfig struct { | |||
| 
 | ||||
| // NewNetStatCollector takes and returns
 | ||||
| // a new Collector exposing network stats.
 | ||||
| func NewNetStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNetStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	pattern := regexp.MustCompile(*config.NetStat.Fields) | ||||
| 	return &netStatCollector{ | ||||
| 		fieldPattern: pattern, | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewNetworkRouteCollector returns a new Collector exposing systemd statistics.
 | ||||
| func NewNetworkRouteCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNetworkRouteCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const subsystem = "network" | ||||
| 
 | ||||
| 	routeInfoDesc := prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -48,7 +48,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewNfsCollector returns a new Collector exposing NFS statistics.
 | ||||
| func NewNfsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNfsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := nfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -44,7 +44,7 @@ const ( | |||
| ) | ||||
| 
 | ||||
| // NewNFSdCollector returns a new Collector exposing /proc/net/rpc/nfsd statistics.
 | ||||
| func NewNFSdCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNFSdCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := nfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -62,7 +62,7 @@ type NTPConfig struct { | |||
| // Default definition of "local" is:
 | ||||
| // - collector.ntp.server address is a loopback address (or collector.ntp.server-is-mine flag is turned on)
 | ||||
| // - the server is reachable with outgoin IP_TTL = 1
 | ||||
| func NewNtpCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNtpCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	ipaddr := net.ParseIP(*config.NTP.Server) | ||||
| 	if !*config.NTP.ServerIsLocal && (ipaddr == nil || !ipaddr.IsLoopback()) { | ||||
| 		return nil, fmt.Errorf("only IP address of local NTP server is valid for --collector.ntp.server") | ||||
|  |  | |||
|  | @ -37,7 +37,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewNVMeCollector returns a new Collector exposing NVMe stats.
 | ||||
| func NewNVMeCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewNVMeCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -65,7 +65,7 @@ type osReleaseCollector struct { | |||
| 	osReleaseFilenames []string // all os-release file names to check
 | ||||
| 	version            float64 | ||||
| 	versionDesc        *prometheus.Desc | ||||
| 	config             NodeCollectorConfig | ||||
| 	config             *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| type Plist struct { | ||||
|  | @ -82,7 +82,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewOSCollector returns a new Collector exposing os-release information.
 | ||||
| func NewOSCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewOSCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &osReleaseCollector{ | ||||
| 		logger: logger, | ||||
| 		infoDesc: prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -87,7 +87,7 @@ func TestUpdateStruct(t *testing.T) { | |||
| 	} | ||||
| 	wantedVersion := 20.04 | ||||
| 
 | ||||
| 	collector, err := NewOSCollector(NodeCollectorConfig{}, log.NewNopLogger()) | ||||
| 	collector, err := NewOSCollector(&NodeCollectorConfig{}, log.NewNopLogger()) | ||||
| 	if err != nil { | ||||
| 		t.Fatal(err) | ||||
| 	} | ||||
|  |  | |||
|  | @ -75,8 +75,8 @@ func TestCustomSysPath(t *testing.T) { | |||
| 	} | ||||
| } | ||||
| 
 | ||||
| func newNodeCollectorWithPaths() NodeCollectorConfig { | ||||
| 	return NodeCollectorConfig{Path: PathConfig{ | ||||
| func newNodeCollectorWithPaths() *NodeCollectorConfig { | ||||
| 	return &NodeCollectorConfig{Path: PathConfig{ | ||||
| 		ProcPath:     new(string), | ||||
| 		SysPath:      new(string), | ||||
| 		RootfsPath:   new(string), | ||||
|  |  | |||
|  | @ -300,7 +300,7 @@ func newPerfTracepointCollector( | |||
| 
 | ||||
| // NewPerfCollector returns a new perf based collector, it creates a profiler
 | ||||
| // per CPU.
 | ||||
| func NewPerfCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewPerfCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	collector := &perfCollector{ | ||||
| 		perfHwProfilers:     map[int]*perf.HardwareProfiler{}, | ||||
| 		perfSwProfilers:     map[int]*perf.SoftwareProfiler{}, | ||||
|  |  | |||
|  | @ -44,7 +44,7 @@ func canTestPerf(t *testing.T) { | |||
| 
 | ||||
| func TestPerfCollector(t *testing.T) { | ||||
| 	canTestPerf(t) | ||||
| 	collector, err := NewPerfCollector(NodeCollectorConfig{}, log.NewNopLogger()) | ||||
| 	collector, err := NewPerfCollector(&NodeCollectorConfig{}, log.NewNopLogger()) | ||||
| 	if err != nil { | ||||
| 		t.Fatal(err) | ||||
| 	} | ||||
|  | @ -64,7 +64,7 @@ func TestPerfCollector(t *testing.T) { | |||
| } | ||||
| 
 | ||||
| func TestPerfCollectorStride(t *testing.T) { | ||||
| 	config := NodeCollectorConfig{} | ||||
| 	config := &NodeCollectorConfig{} | ||||
| 
 | ||||
| 	canTestPerf(t) | ||||
| 
 | ||||
|  |  | |||
|  | @ -29,7 +29,7 @@ type powerSupplyClassCollector struct { | |||
| 	ignoredPattern *regexp.Regexp | ||||
| 	metricDescs    map[string]*prometheus.Desc | ||||
| 	logger         log.Logger | ||||
| 	config         NodeCollectorConfig | ||||
| 	config         *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -40,7 +40,7 @@ type PowerSupplyClassConfig struct { | |||
| 	IgnoredPowerSupplies *string | ||||
| } | ||||
| 
 | ||||
| func NewPowerSupplyClassCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewPowerSupplyClassCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	pattern := regexp.MustCompile(*config.PowerSupplyClass.IgnoredPowerSupplies) | ||||
| 	return &powerSupplyClassCollector{ | ||||
| 		subsystem:      "power_supply", | ||||
|  |  | |||
|  | @ -155,7 +155,7 @@ func pushPowerSupplyMetric(ch chan<- prometheus.Metric, subsystem string, name s | |||
| 	ch <- prometheus.MustNewConstMetric(fieldDesc, valueType, value, powerSupplyName) | ||||
| } | ||||
| 
 | ||||
| func getPowerSupplyClassInfo(config NodeCollectorConfig, ignore *regexp.Regexp) (sysfs.PowerSupplyClass, error) { | ||||
| func getPowerSupplyClassInfo(config *NodeCollectorConfig, ignore *regexp.Regexp) (sysfs.PowerSupplyClass, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewPressureStatsCollector returns a Collector exposing pressure stall information
 | ||||
| func NewPressureStatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewPressureStatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ type processCollector struct { | |||
| 	pidUsed      *prometheus.Desc | ||||
| 	pidMax       *prometheus.Desc | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -48,7 +48,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewProcessStatCollector returns a new Collector exposing process data read from the proc filesystem.
 | ||||
| func NewProcessStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewProcessStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ type qdiscStatCollector struct { | |||
| 	overlimits   typedDesc | ||||
| 	qlength      typedDesc | ||||
| 	backlog      typedDesc | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -54,7 +54,7 @@ type QdiscConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewQdiscStatCollector returns a new Collector exposing queuing discipline statistics.
 | ||||
| func NewQdiscStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewQdiscStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	if *config.Qdisc.OldDeviceInclude != "" { | ||||
| 		if *config.Qdisc.DeviceInclude == "" { | ||||
| 			level.Warn(logger).Log("msg", "--collector.qdisk.device-include is DEPRECATED and will be removed in 2.0.0, use --collector.qdisc.device-include") | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ type raplCollector struct { | |||
| 	logger log.Logger | ||||
| 
 | ||||
| 	joulesMetricDesc *prometheus.Desc | ||||
| 	config           NodeCollectorConfig | ||||
| 	config           *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -47,7 +47,7 @@ type RaplConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewRaplCollector returns a new Collector exposing RAPL metrics.
 | ||||
| func NewRaplCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewRaplCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 
 | ||||
| 	if err != nil { | ||||
|  |  | |||
|  | @ -29,7 +29,7 @@ type runitCollector struct { | |||
| 	stateNormal    typedDesc | ||||
| 	stateTimestamp typedDesc | ||||
| 	logger         log.Logger | ||||
| 	config         NodeCollectorConfig | ||||
| 	config         *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -41,7 +41,7 @@ type RunitConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewRunitCollector returns a new Collector exposing runit statistics.
 | ||||
| func NewRunitCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewRunitCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var ( | ||||
| 		subsystem   = "service" | ||||
| 		constLabels = prometheus.Labels{"supervisor": "runit"} | ||||
|  |  | |||
|  | @ -53,7 +53,7 @@ var ( | |||
| ) | ||||
| 
 | ||||
| // NewSchedstatCollector returns a new Collector exposing task scheduler statistics
 | ||||
| func NewSchedstatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSchedstatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewSelinuxCollector returns a new Collector exposing SELinux statistics.
 | ||||
| func NewSelinuxCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSelinuxCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const subsystem = "selinux" | ||||
| 
 | ||||
| 	return &selinuxCollector{ | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ func init() { | |||
| 	registerCollector("slabinfo", defaultDisabled, NewSlabinfoCollector) | ||||
| } | ||||
| 
 | ||||
| func NewSlabinfoCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSlabinfoCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ var pageSize = os.Getpagesize() | |||
| 
 | ||||
| type sockStatCollector struct { | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -44,7 +44,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewSockStatCollector returns a new Collector exposing socket stats.
 | ||||
| func NewSockStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSockStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &sockStatCollector{logger, config}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewSoftirqsCollector returns a new Collector exposing softirq stats.
 | ||||
| func NewSoftirqsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSoftirqsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	desc := typedDesc{prometheus.NewDesc( | ||||
| 		namespace+"_softirqs_functions_total", | ||||
| 		"Softirq counts per CPU.", | ||||
|  |  | |||
|  | @ -46,7 +46,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewSoftnetCollector returns a new Collector exposing softnet metrics.
 | ||||
| func NewSoftnetCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSoftnetCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -34,7 +34,7 @@ type statCollector struct { | |||
| 	procsBlocked *prometheus.Desc | ||||
| 	softIRQ      *prometheus.Desc | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -46,7 +46,7 @@ type StatConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewStatCollector returns a new Collector exposing kernel/system statistics.
 | ||||
| func NewStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -51,7 +51,7 @@ type SupervisordConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewSupervisordCollector returns a new Collector exposing supervisord statistics.
 | ||||
| func NewSupervisordCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSupervisordCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var ( | ||||
| 		subsystem  = "supervisord" | ||||
| 		labelNames = []string{"name", "group"} | ||||
|  |  | |||
|  | @ -42,7 +42,7 @@ type SysctlConfig struct { | |||
| 	IncludeInfo *[]string | ||||
| } | ||||
| 
 | ||||
| func NewSysctlCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSysctlCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -84,7 +84,7 @@ type SystemdConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewSystemdCollector returns a new Collector exposing systemd statistics.
 | ||||
| func NewSystemdCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewSystemdCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const subsystem = "systemd" | ||||
| 
 | ||||
| 	unitDesc := prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -105,7 +105,7 @@ func TestSystemdIgnoreFilterDefaultKeepsAll(t *testing.T) { | |||
| 	logger := log.NewNopLogger() | ||||
| 	defaultInclude := ".+" | ||||
| 	defaultExclude := ".+\\.(automount|device|mount|scope|slice)" | ||||
| 	config := NodeCollectorConfig{Systemd: SystemdConfig{ | ||||
| 	config := &NodeCollectorConfig{Systemd: SystemdConfig{ | ||||
| 		UnitInclude:    &defaultInclude, | ||||
| 		UnitExclude:    &defaultExclude, | ||||
| 		OldUnitInclude: new(string), | ||||
|  |  | |||
|  | @ -53,7 +53,7 @@ type TapestatsConfig struct { | |||
| 
 | ||||
| // NewTapestatsCollector returns a new Collector exposing tape device stats.
 | ||||
| // Docs from https://www.kernel.org/doc/html/latest/scsi/st.html#sysfs-and-statistics-for-tape-devices
 | ||||
| func NewTapestatsCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewTapestatsCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	var tapeLabelNames = []string{"device"} | ||||
| 
 | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
|  |  | |||
|  | @ -61,7 +61,7 @@ const ( | |||
| type tcpStatCollector struct { | ||||
| 	desc   typedDesc | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -69,7 +69,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewTCPStatCollector returns a new Collector exposing network stats.
 | ||||
| func NewTCPStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewTCPStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &tcpStatCollector{ | ||||
| 		desc: typedDesc{prometheus.NewDesc( | ||||
| 			prometheus.BuildFQName(namespace, "tcp", "connection_states"), | ||||
|  |  | |||
|  | @ -57,7 +57,7 @@ type TextFileConfig struct { | |||
| 
 | ||||
| // NewTextFileCollector returns a new Collector exposing metrics read from files
 | ||||
| // in the given textfile directory.
 | ||||
| func NewTextFileCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewTextFileCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	c := &textFileCollector{ | ||||
| 		path:   *config.TextFile.Directory, | ||||
| 		logger: logger, | ||||
|  |  | |||
|  | @ -67,7 +67,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewThermCollector returns a new Collector exposing current CPU power levels.
 | ||||
| func NewThermCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewThermCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &thermCollector{ | ||||
| 		cpuSchedulerLimit: typedDesc{ | ||||
| 			desc: prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -43,7 +43,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewThermalZoneCollector returns a new Collector exposing kernel/system statistics.
 | ||||
| func NewThermalZoneCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewThermalZoneCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := sysfs.NewFS(*config.Path.SysPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open sysfs: %w", err) | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ type timeCollector struct { | |||
| 	clocksourcesAvailable typedDesc | ||||
| 	clocksourceCurrent    typedDesc | ||||
| 	logger                log.Logger | ||||
| 	config                NodeCollectorConfig | ||||
| 	config                *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -39,7 +39,7 @@ func init() { | |||
| 
 | ||||
| // NewTimeCollector returns a new Collector exposing the current system time in
 | ||||
| // seconds since epoch.
 | ||||
| func NewTimeCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewTimeCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const subsystem = "time" | ||||
| 	return &timeCollector{ | ||||
| 		now: typedDesc{prometheus.NewDesc( | ||||
|  |  | |||
|  | @ -66,7 +66,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewTimexCollector returns a new Collector exposing adjtime(3) stats.
 | ||||
| func NewTimexCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewTimexCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const subsystem = "timex" | ||||
| 
 | ||||
| 	return &timexCollector{ | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewUDPqueuesCollector returns a new Collector exposing network udp queued bytes.
 | ||||
| func NewUDPqueuesCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewUDPqueuesCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	fs, err := procfs.NewFS(*config.Path.ProcPath) | ||||
| 	if err != nil { | ||||
| 		return nil, fmt.Errorf("failed to open procfs: %w", err) | ||||
|  |  | |||
|  | @ -53,7 +53,7 @@ func init() { | |||
| } | ||||
| 
 | ||||
| // NewUnameCollector returns new unameCollector.
 | ||||
| func newUnameCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func newUnameCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	return &unameCollector{logger}, nil | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -35,7 +35,7 @@ const ( | |||
| type vmStatCollector struct { | ||||
| 	fieldPattern *regexp.Regexp | ||||
| 	logger       log.Logger | ||||
| 	config       NodeCollectorConfig | ||||
| 	config       *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -47,7 +47,7 @@ type VmStatConfig struct { | |||
| } | ||||
| 
 | ||||
| // NewvmStatCollector returns a new Collector exposing vmstat stats.
 | ||||
| func NewvmStatCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewvmStatCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	pattern := regexp.MustCompile(*config.VmStat.Fields) | ||||
| 	return &vmStatCollector{ | ||||
| 		fieldPattern: pattern, | ||||
|  |  | |||
|  | @ -45,7 +45,7 @@ type wifiCollector struct { | |||
| 	stationBeaconLossTotal       *prometheus.Desc | ||||
| 
 | ||||
| 	logger log.Logger | ||||
| 	config NodeCollectorConfig | ||||
| 	config *NodeCollectorConfig | ||||
| } | ||||
| 
 | ||||
| func init() { | ||||
|  | @ -67,7 +67,7 @@ type wifiStater interface { | |||
| } | ||||
| 
 | ||||
| // NewWifiCollector returns a new Collector exposing Wifi statistics.
 | ||||
| func NewWifiCollector(config NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| func NewWifiCollector(config *NodeCollectorConfig, logger log.Logger) (Collector, error) { | ||||
| 	const ( | ||||
| 		subsystem = "wifi" | ||||
| 	) | ||||
|  |  | |||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
		Reference in a new issue