Alerting: Add a feature flag to periodically save states (#80987)

This commit is contained in:
Jean-Philippe Quéméner
2024-01-23 17:03:30 +01:00
committed by GitHub
parent f7fd8e6cd1
commit aa25776f81
14 changed files with 81 additions and 23 deletions
+7 -1
View File
@@ -98,7 +98,8 @@ type UnifiedAlertingSettings struct {
RemoteAlertmanager RemoteAlertmanagerSettings
Upgrade UnifiedAlertingUpgradeSettings
// MaxStateSaveConcurrency controls the number of goroutines (per rule) that can save alert state in parallel.
MaxStateSaveConcurrency int
MaxStateSaveConcurrency int
StatePeriodicSaveInterval time.Duration
}
// RemoteAlertmanagerSettings contains the configuration needed
@@ -403,6 +404,11 @@ func (cfg *Cfg) ReadUnifiedAlertingSettings(iniFile *ini.File) error {
uaCfg.MaxStateSaveConcurrency = ua.Key("max_state_save_concurrency").MustInt(1)
uaCfg.StatePeriodicSaveInterval, err = gtime.ParseDuration(valueAsString(ua, "state_periodic_save_interval", (time.Minute * 5).String()))
if err != nil {
return err
}
upgrade := iniFile.Section("unified_alerting.upgrade")
uaCfgUpgrade := UnifiedAlertingUpgradeSettings{
CleanUpgrade: upgrade.Key("clean_upgrade").MustBool(false),