diff --git a/src/service/alert_rules.go b/src/service/alert_rules.go index d57812cb25e23d8babb344ffbaae556a089b3560..94e4ca54f267403b2a1dd8c66f54ca79e7669121 100644 --- a/src/service/alert_rules.go +++ b/src/service/alert_rules.go @@ -238,16 +238,20 @@ func (a *AlertRulesSvc) UpdateIsEnabled(req request.UpdateIsEnabledAlertRules) ( return } if req.IsEnabled == 2 { - if item.IsEnabled == 1 { - prSvc := PrometheusRuleSvc{User: a.User} + prSvc := PrometheusRuleSvc{User: a.User} + var exist bool + _, exist, err = prSvc.Get(item) + if exist { err = prSvc.Delete(item) if err != nil { return } } } else if req.IsEnabled == 1 { - if item.IsEnabled == 2 { - prSvc := PrometheusRuleSvc{User: a.User} + prSvc := PrometheusRuleSvc{User: a.User} + var exist bool + _, exist, err = prSvc.Get(item) + if !exist { err = prSvc.Create(item) if err != nil { return