Skip to content
This repository was archived by the owner on Aug 30, 2023. It is now read-only.

Conversation

@kevinburke
Copy link

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.

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 getsentry#109.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant