monitor config: make threshold optional in the configuration
takes default when not set.
This commit is contained in:
parent
2f6a839642
commit
6caf78a57b
|
@ -30,8 +30,8 @@ type Config struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type jsonConfig struct {
|
type jsonConfig struct {
|
||||||
CheckInterval string `json:"check_interval"`
|
CheckInterval string `json:"check_interval"`
|
||||||
FailureThreshold float64 `json:"failure_threshold"`
|
FailureThreshold *float64 `json:"failure_threshold"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ConfigKey provides a human-friendly identifier for this type of Config.
|
// ConfigKey provides a human-friendly identifier for this type of Config.
|
||||||
|
@ -91,7 +91,9 @@ func (cfg *Config) LoadJSON(raw []byte) error {
|
||||||
func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
func (cfg *Config) applyJSONConfig(jcfg *jsonConfig) error {
|
||||||
interval, _ := time.ParseDuration(jcfg.CheckInterval)
|
interval, _ := time.ParseDuration(jcfg.CheckInterval)
|
||||||
cfg.CheckInterval = interval
|
cfg.CheckInterval = interval
|
||||||
cfg.FailureThreshold = jcfg.FailureThreshold
|
if jcfg.FailureThreshold != nil {
|
||||||
|
cfg.FailureThreshold = *jcfg.FailureThreshold
|
||||||
|
}
|
||||||
|
|
||||||
return cfg.Validate()
|
return cfg.Validate()
|
||||||
}
|
}
|
||||||
|
@ -106,6 +108,6 @@ func (cfg *Config) ToJSON() ([]byte, error) {
|
||||||
func (cfg *Config) toJSONConfig() *jsonConfig {
|
func (cfg *Config) toJSONConfig() *jsonConfig {
|
||||||
return &jsonConfig{
|
return &jsonConfig{
|
||||||
CheckInterval: cfg.CheckInterval.String(),
|
CheckInterval: cfg.CheckInterval.String(),
|
||||||
FailureThreshold: cfg.FailureThreshold,
|
FailureThreshold: &cfg.FailureThreshold,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user