25 lines
646 B
Smarty
25 lines
646 B
Smarty
package queue
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/riverqueue/river"
|
|
"github.com/riverqueue/river/rivertype"
|
|
log "github.com/sirupsen/logrus"
|
|
)
|
|
|
|
type CustomErrorHandler struct{}
|
|
|
|
func (*CustomErrorHandler) HandleError(ctx context.Context, job *rivertype.JobRow, err error) *river.ErrorHandlerResult {
|
|
log.Infof("Job errored with: %s\n", err)
|
|
return nil
|
|
}
|
|
|
|
func (*CustomErrorHandler) HandlePanic(ctx context.Context, job *rivertype.JobRow, panicVal any, trace string) *river.ErrorHandlerResult {
|
|
log.Infof("Job panicked with: %v\n", panicVal)
|
|
log.Infof("Stack trace: %s\n", trace)
|
|
return &river.ErrorHandlerResult{
|
|
SetCancelled: true,
|
|
}
|
|
}
|