introduce top level alerting config node
This commit is contained in:
		
							parent
							
								
									7714b9c781
								
							
						
					
					
						commit
						b655aa002f
					
				| 
						 | 
					@ -176,10 +176,10 @@ func (u URL) MarshalYAML() (interface{}, error) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Config is the top-level configuration for Prometheus's config files.
 | 
					// Config is the top-level configuration for Prometheus's config files.
 | 
				
			||||||
type Config struct {
 | 
					type Config struct {
 | 
				
			||||||
	GlobalConfig        GlobalConfig     `yaml:"global"`
 | 
						GlobalConfig   GlobalConfig    `yaml:"global"`
 | 
				
			||||||
	AlertRelabelConfigs []*RelabelConfig `yaml:"alert_relabel_configs,omitempty"`
 | 
						AlertingConfig AlertingConfig  `yaml:"alerting,omitempty"`
 | 
				
			||||||
	RuleFiles           []string         `yaml:"rule_files,omitempty"`
 | 
						RuleFiles      []string        `yaml:"rule_files,omitempty"`
 | 
				
			||||||
	ScrapeConfigs       []*ScrapeConfig  `yaml:"scrape_configs,omitempty"`
 | 
						ScrapeConfigs  []*ScrapeConfig `yaml:"scrape_configs,omitempty"`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Catches all undefined fields and must be empty after parsing.
 | 
						// Catches all undefined fields and must be empty after parsing.
 | 
				
			||||||
	XXX map[string]interface{} `yaml:",inline"`
 | 
						XXX map[string]interface{} `yaml:",inline"`
 | 
				
			||||||
| 
						 | 
					@ -293,6 +293,11 @@ func (c *Config) UnmarshalYAML(unmarshal func(interface{}) error) error {
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// AlertingConfig configures alerting and alertmanager related configs
 | 
				
			||||||
 | 
					type AlertingConfig struct {
 | 
				
			||||||
 | 
						AlertRelabelConfigs []*RelabelConfig `yaml:"alert_relabel_configs,omitempty"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// GlobalConfig configures values that are used across other configuration
 | 
					// GlobalConfig configures values that are used across other configuration
 | 
				
			||||||
// objects.
 | 
					// objects.
 | 
				
			||||||
type GlobalConfig struct {
 | 
					type GlobalConfig struct {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -138,7 +138,7 @@ func (n *Notifier) ApplyConfig(conf *config.Config) error {
 | 
				
			||||||
	defer n.mtx.Unlock()
 | 
						defer n.mtx.Unlock()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	n.opts.ExternalLabels = conf.GlobalConfig.ExternalLabels
 | 
						n.opts.ExternalLabels = conf.GlobalConfig.ExternalLabels
 | 
				
			||||||
	n.opts.RelabelConfigs = conf.AlertRelabelConfigs
 | 
						n.opts.RelabelConfigs = conf.AlertingConfig.AlertRelabelConfigs
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue