Package calmly implements convenient runtime panic recovery and handling in Go.
v1.0.1 Stable: Guaranteed no breaking changes to the API in future v1.x releases. Probably safe to use in production, though provided on "AS IS" basis.
This package is being actively maintained. If you encounter any problems or have any suggestions for improvement, please open an issue. Pull requests are welcome.
When a panic condition needs to be handled by the program (rather than crashing it), wrap the code that can trigger such condition in a Try
, which allows you to Catch
the panic for further processing.
The Outcome
of a Try
ed code also offers convenience methods to:
KeepCalm
downgrading a panic to an error condition;Escalate
upgrading a panic to a fatal error;Log
the error, panic or fatal condition, using the appropriate logger method - presumably triggering a new panic or exiting the program.
go get github.com/agext/calmly
Package calmly is released under the Apache 2.0 license. See the LICENSE file for details.