diff --git a/pkg/services/ngalert/state/compat.go b/pkg/services/ngalert/state/compat.go index 1de57a8c9193..e41fa5041a80 100644 --- a/pkg/services/ngalert/state/compat.go +++ b/pkg/services/ngalert/state/compat.go @@ -27,6 +27,8 @@ const ( ErrorAlertName = "DatasourceError" Rulename = "rulename" + + LogzioStateTransitionAnnotation = "__logzioStateTransition__" // LOGZ.IO GRAFANA CHANGE :: DEV-48550 - Add state transition to annotations ) // StateToPostableAlert converts a state to a model that is accepted by Alertmanager. Annotations and Labels are copied from the state. @@ -159,6 +161,7 @@ func FromStateTransitionToPostableAlerts(firingStates []StateTransition, stateMa alert.Annotations[ngModels.LogzioAccountIdAnnotation] = logzAccountId } } + alert.Annotations[LogzioStateTransitionAnnotation] = fmt.Sprintf("{\"state\":\"%v\",\"previousState\":\"%v\"}", alertState.State.State, alertState.PreviousState) // LOGZ.IO GRAFANA CHANGE :: DEV-48550 - Add state transition to annotations // LOGZ.IO GRAFANA CHANGE :: End alerts.PostableAlerts = append(alerts.PostableAlerts, *alert) if alertState.StateReason == ngModels.StateReasonMissingSeries { // do not put stale state back to state manager