raven-go icon indicating copy to clipboard operation
raven-go copied to clipboard

Print the recovered value before dumping stack trace

Open kevinburke opened this issue 8 years ago • 0 comments

Previously the RecoveryHandler would catch panics and log them to Sentry, but not log any information about the error to stderr, making it more difficult to debug than an ordinary panic. Instead, print a pseudo-panic header to stderr before printing the stack trace.

Stderr printed by the RecoveryHandler on a panic now looks like this:

panic: unknown property Region

goroutine 55 [running]:
runtime/debug.Stack(0x19, 0x0, 0x0)
    /Users/kevin/go/src/runtime/debug/stack.go:24 +0x79
runtime/debug.PrintStack()
    /Users/kevin/go/src/runtime/debug/stack.go:16 +0x22
github.com/saintpete/logrole/vendor/github.com/getsentry/raven-go.RecoveryHandler.func1.1(0xc420746e10, 0x791be0, 0xc4205d1e90)
    /Users/kevin/code/go/src/github.com/saintpete/logrole/vendor/github.com/getsentry/raven-go/http.go:100 +0x106
panic(0x46d760, 0xc4204d0210)
    /Users/kevin/go/src/runtime/panic.go:458 +0x243
text/template.errRecover(0xc4207a5248)
    /Users/kevin/go/src/text/template/exec.go:146 +0x18e

Fixes #109.

kevinburke avatar Oct 26 '16 23:10 kevinburke