mirror of
https://github.com/prometheus/node_exporter.git
synced 2025-03-05 21:00:12 -08:00
Remove caching of collectors.
This commit is contained in:
parent
d4879a5e87
commit
69c6eb312f
|
@ -50,13 +50,11 @@ const (
|
|||
)
|
||||
|
||||
var (
|
||||
factories = make(map[string]func(config *NodeCollectorConfig, logger log.Logger) (Collector, error))
|
||||
initiatedCollectorsMtx = sync.Mutex{}
|
||||
initiatedCollectors = make(map[string]Collector)
|
||||
collectorStateGlobal = make(map[string]bool)
|
||||
collectorFlagState = make(map[string]*bool)
|
||||
availableCollectors = make([]string, 0)
|
||||
forcedCollectors = map[string]bool{} // collectors which have been explicitly enabled or disabled
|
||||
factories = make(map[string]func(config *NodeCollectorConfig, logger log.Logger) (Collector, error))
|
||||
collectorStateGlobal = make(map[string]bool)
|
||||
collectorFlagState = make(map[string]*bool)
|
||||
availableCollectors = make([]string, 0)
|
||||
forcedCollectors = map[string]bool{} // collectors which have been explicitly enabled or disabled
|
||||
)
|
||||
|
||||
func GetDefaults() map[string]bool {
|
||||
|
@ -141,22 +139,16 @@ func NewNodeCollector(config *NodeCollectorConfig, enabledCollectors map[string]
|
|||
f[filter] = true
|
||||
}
|
||||
collectors := make(map[string]Collector)
|
||||
initiatedCollectorsMtx.Lock()
|
||||
defer initiatedCollectorsMtx.Unlock()
|
||||
|
||||
for key, enabled := range enabledCollectors {
|
||||
if !enabled || (len(f) > 0 && !f[key]) {
|
||||
continue
|
||||
}
|
||||
if collector, ok := initiatedCollectors[key]; ok {
|
||||
collectors[key] = collector
|
||||
} else {
|
||||
collector, err := factories[key](config, log.With(logger, "collector", key))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
collectors[key] = collector
|
||||
initiatedCollectors[key] = collector
|
||||
collector, err := factories[key](config, log.With(logger, "collector", key))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
collectors[key] = collector
|
||||
}
|
||||
return &NodeCollector{Collectors: collectors, logger: logger}, nil
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue