mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Alerting: Use common StateReason values for NoData/Error mapped states (#76781)
Fix hardcoded state reasons
This commit is contained in:
parent
d98edad953
commit
acee3efcf9
@ -108,6 +108,7 @@ const (
|
||||
|
||||
const (
|
||||
StateReasonMissingSeries = "MissingSeries"
|
||||
StateReasonNoData = "NoData"
|
||||
StateReasonError = "Error"
|
||||
StateReasonPaused = "Paused"
|
||||
StateReasonUpdated = "Updated"
|
||||
|
@ -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))
|
||||
|
Loading…
Reference in New Issue
Block a user