rollbar
is a Golang Rollbar client that makes it easy to report errors to
Rollbar with full stacktraces. Errors are sent to Rollbar asynchronously in a
background goroutine.
Because Go's error
type doesn't include stack information from when it was set
or allocated, we use the stack information from where the error was reported.
package main
import (
"github.com/stvp/rollbar"
)
func main() {
rollbar.SetToken("MY_TOKEN")
rollbar.SetEnvironment("production") // defaults to "development"
rollbar.SetCodeVersion("v2") // optional Git hash/branch/tag (required for GitHub integration)
rollbar.SetServerHost("web.1") // optional override; defaults to hostname
rollbar.SetServerRoot("github.com/heroku/myproject") // path of project (required for GitHub integration and non-project stacktrace collapsing)
result, err := DoSomething()
if err != nil {
rollbar.Error(rollbar.ERR, err)
}
rollbar.Message("info", "Message body goes here")
rollbar.Wait()
}
Set up a dummy project in Rollbar and pass the access token as an environment
variable to go test
:
TOKEN=f0df01587b8f76b2c217af34c479f9ea go test
And verify the reported errors manually.
A big thank you to everyone who has contributed pull requests and bug reports:
- @kjk
- @Soulou
- @paulmach
- @fabiokung