Documentation
¶
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ReportPanic ¶
func ReportPanic(token, env string)
ReportPanic attempts to report the panic to Rollbar using the provided client and then re-panic. If it can't report the panic it will print an error to stderr.
func SetupLogging ¶
func SetupLogging(token, env string)
SetupLogging for use on Heroku. If token is not an empty string a Rollbar hook is added with the environment set to env. The log formatter is set to a TextFormatter with timestamps disabled.
Example ¶
SetupLogging("some-long-token", "staging") // This will not be reported to Rollbar logrus.Info("OHAI") // This will be reported to Rollbar logrus.WithFields(logrus.Fields{"hi": "there"}).Fatal("The end.")
Output:
func SetupLoggingForLevels ¶
SetupLoggingForLevels works like SetupLogging, but allows you to set the levels on which to trigger this hook.
Types ¶
type Hook ¶
type Hook struct { *rollbar.Client // contains filtered or unexported fields }
Hook is a wrapper for the Rollbar Client and is usable as a logrus.Hook.
func NewHook ¶
func NewHook(token string, env string, opts ...OptionFunc) *Hook
NewHook creates a hook that is intended for use with your own logrus.Logger instance. Uses the default report levels defined in wellKnownErrorFields.
Example ¶
log := logrus.New() hook := NewHook("my-secret-token", "production") log.Hooks.Add(hook) // This will not be reported to Rollbar log.WithFields(logrus.Fields{"power_level": "9001"}).Debug("It's over 9000!") // This will be reported to Rollbar log.Panic("Boom.")
Output:
func NewHookForLevels ¶
NewHookForLevels provided by the caller. Otherwise works like NewHook.
type OptionFunc ¶
type OptionFunc func(*Hook)
OptionFunc that can be passed to NewHook.
func WithIgnoreErrorFunc ¶
func WithIgnoreErrorFunc(fn func(error) bool) OptionFunc
WithIgnoreErrorFunc is an OptionFunc that receives the error that is about to be logged and returns true/false if it wants to fire a Rollbar alert for.
func WithIgnoreFunc ¶
func WithIgnoreFunc(fn func(err error, fields map[string]interface{}) bool) OptionFunc
WithIgnoreFunc is an OptionFunc that receives the error and custom fields that are about to be logged and returns true/false if it wants to fire a Rollbar alert for.
func WithIgnoredErrors ¶
func WithIgnoredErrors(errors ...error) OptionFunc
WithIgnoredErrors is an OptionFunc that whitelists certain errors to prevent them from firing. See https://golang.org/ref/spec#Comparison_operators
func WithLevels ¶
func WithLevels(levels ...logrus.Level) OptionFunc
WithLevels is an OptionFunc that customizes the log.Levels the hook will report on.
func WithMinLevel ¶
func WithMinLevel(level logrus.Level) OptionFunc
WithMinLevel is an OptionFunc that customizes the log.Levels the hook will report on by selecting all levels more severe than the one provided.