fix(alerting): add missing evaldata field to set state command

This commit is contained in:
bergquist
2016-09-14 14:35:05 +02:00
parent 31892ed73c
commit a23b7f1371
3 changed files with 13 additions and 8 deletions
+6 -4
View File
@@ -102,10 +102,12 @@ type SaveAlertsCommand struct {
}
type SetAlertStateCommand struct {
AlertId int64
OrgId int64
State AlertStateType
Error string
AlertId int64
OrgId int64
State AlertStateType
Error string
EvalData *simplejson.Json
Timestamp time.Time
}
+5 -4
View File
@@ -54,10 +54,11 @@ func (handler *DefaultResultHandler) Handle(ctx *EvalContext) {
handler.log.Info("New state change", "alertId", ctx.Rule.Id, "newState", ctx.Rule.State, "oldState", oldState)
cmd := &m.SetAlertStateCommand{
AlertId: ctx.Rule.Id,
OrgId: ctx.Rule.OrgId,
State: ctx.Rule.State,
Error: exeuctionError,
AlertId: ctx.Rule.Id,
OrgId: ctx.Rule.OrgId,
State: ctx.Rule.State,
Error: exeuctionError,
EvalData: annotationData,
}
if err := bus.Dispatch(cmd); err != nil {
+2
View File
@@ -227,6 +227,8 @@ func SetAlertState(cmd *m.SetAlertStateCommand) error {
alert.State = cmd.State
alert.StateChanges += 1
alert.NewStateDate = time.Now()
alert.EvalData = cmd.EvalData
if cmd.Error == "" {
alert.ExecutionError = " " //without this space, xorm skips updating this field
} else {