scheduler: log stack in case of panic (#15303)

This commit is contained in:
Luiz Aoqui
2022-11-17 18:59:33 -05:00
committed by GitHub
parent 5ce42fe8f2
commit 6a3cf74f32
2 changed files with 6 additions and 2 deletions

View File

@@ -2,6 +2,7 @@ package scheduler
import (
"fmt"
"runtime/debug"
"sort"
"time"
@@ -145,7 +146,8 @@ func (s *GenericScheduler) Process(eval *structs.Evaluation) (err error) {
defer func() {
if r := recover(); r != nil {
err = fmt.Errorf("processing eval %q panicked scheduler - please report this as a bug! - %v", eval.ID, r)
s.logger.Error("processing eval panicked scheduler - please report this as a bug!", "eval_id", eval.ID, "error", r, "stack_trace", string(debug.Stack()))
err = fmt.Errorf("failed to process eval: %v", r)
}
}()

View File

@@ -2,6 +2,7 @@ package scheduler
import (
"fmt"
"runtime/debug"
log "github.com/hashicorp/go-hclog"
"github.com/hashicorp/go-memdb"
@@ -76,7 +77,8 @@ func (s *SystemScheduler) Process(eval *structs.Evaluation) (err error) {
defer func() {
if r := recover(); r != nil {
err = fmt.Errorf("processing eval %q panicked scheduler - please report this as a bug! - %v", eval.ID, r)
s.logger.Error("processing eval panicked scheduler - please report this as a bug!", "eval_id", eval.ID, "error", r, "stack_trace", string(debug.Stack()))
err = fmt.Errorf("failed to process eval: %v", r)
}
}()