Skip to content

Commit 925806d

Browse files
committed
tech(alerting): add recovery logging
1 parent 7952723 commit 925806d

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

pkg/services/alerting/engine.go

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func (e *Engine) Stop() {
5454
func (e *Engine) alertingTicker() {
5555
defer func() {
5656
if err := recover(); err != nil {
57-
e.log.Error("Scheduler Panic, stopping...", "error", err, "stack", log.Stack(1))
57+
e.log.Error("Scheduler Panic: stopping alertingTicker", "error", err, "stack", log.Stack(1))
5858
}
5959
}()
6060

@@ -75,6 +75,12 @@ func (e *Engine) alertingTicker() {
7575
}
7676

7777
func (e *Engine) execDispatch() {
78+
defer func() {
79+
if err := recover(); err != nil {
80+
e.log.Error("Scheduler Panic: stopping executor", "error", err, "stack", log.Stack(1))
81+
}
82+
}()
83+
7884
for job := range e.execQueue {
7985
log.Trace("Alerting: engine:execDispatch() starting job %s", job.Rule.Name)
8086
job.Running = true
@@ -105,6 +111,12 @@ func (e *Engine) executeJob(job *AlertJob) {
105111
}
106112

107113
func (e *Engine) resultHandler() {
114+
defer func() {
115+
if err := recover(); err != nil {
116+
e.log.Error("Engine Panic, stopping resultHandler", "error", err, "stack", log.Stack(1))
117+
}
118+
}()
119+
108120
for result := range e.resultQueue {
109121
e.log.Debug("Alert Rule Result", "ruleId", result.AlertJob.Rule.Id, "state", result.State, "value", result.ActualValue, "retry", result.AlertJob.RetryCount)
110122

0 commit comments

Comments
 (0)