diff --git a/pkg/services/ngalert/models/alert_rule.go b/pkg/services/ngalert/models/alert_rule.go index 85c87e06384..fc00bab4b25 100644 --- a/pkg/services/ngalert/models/alert_rule.go +++ b/pkg/services/ngalert/models/alert_rule.go @@ -108,6 +108,7 @@ const ( const ( StateReasonMissingSeries = "MissingSeries" + StateReasonNoData = "NoData" StateReasonError = "Error" StateReasonPaused = "Paused" StateReasonUpdated = "Updated" diff --git a/pkg/services/ngalert/state/state.go b/pkg/services/ngalert/state/state.go index 6d8b9a2e9d0..f7389112bd9 100644 --- a/pkg/services/ngalert/state/state.go +++ b/pkg/services/ngalert/state/state.go @@ -268,7 +268,7 @@ func resultError(state *State, rule *models.AlertRule, result eval.Result, logge resultAlerting(state, rule, result, logger) // This is a special case where Alerting and Pending should also have an error and reason state.Error = result.Error - state.StateReason = "error" + state.StateReason = models.StateReasonError case models.ErrorErrState: if state.State == eval.Error { prevEndsAt := state.EndsAt @@ -326,7 +326,7 @@ func resultNoData(state *State, rule *models.AlertRule, result eval.Result, logg case models.Alerting: logger.Debug("Execution no data state is Alerting", "handler", "resultAlerting", "previous_handler", "resultNoData") resultAlerting(state, rule, result, logger) - state.StateReason = models.NoData.String() + state.StateReason = models.StateReasonNoData case models.NoData: if state.State == eval.NoData { prevEndsAt := state.EndsAt @@ -355,7 +355,7 @@ func resultNoData(state *State, rule *models.AlertRule, result eval.Result, logg case models.OK: logger.Debug("Execution no data state is Normal", "handler", "resultNormal", "previous_handler", "resultNoData") resultNormal(state, rule, result, logger) - state.StateReason = models.NoData.String() + state.StateReason = models.StateReasonNoData default: err := fmt.Errorf("unsupported no data state: %s", rule.NoDataState) state.SetError(err, state.StartsAt, nextEndsTime(rule.IntervalSeconds, result.EvaluatedAt))