import "github.com/go-coldbrew/errors"
Package errors provides an implementation of golang error with stack strace information attached to it, the error objects created by this package are compatible with https://golang.org/pkg/errors/
The simplest way to use this package is by calling one of the two functions
errors.New(...)
errors.Wrap(...)
You can also initialize custom error stack by using one of the `WithSkip` functions. `WithSkip` allows skipping the defined number of functions from the stack information.
if you want to create a new error use New
if you want to skip some functions on the stack use NewWithSkip
if you want to add GRPC status use NewWithStatus
if you want to skip some functions on the stack and add GRPC status use NewWithSkipAndStatus
if you want to wrap an existing error use Wrap
if you want to wrap an existing error and add GRPC status use WrapWithStatus
if you want to wrap an existing error and skip some functions on the stack use WrapWithSkip
if you want to wrap an existing error, skip some functions on the stack and add GRPC status use WrapWithSkipAndStatus
if you want to wrap an existing error and add notifier options use WrapWithNotifier
if you want to wrap an existing error, skip some functions on the stack and add notifier options use WrapWithSkipAndNotifier
Head to https://docs.coldbrew.cloud for more information.
- func SetBaseFilePath(path string)
- type ErrorExt
- func New(msg string) ErrorExt
- func NewWithSkip(msg string, skip int) ErrorExt
- func NewWithSkipAndStatus(msg string, skip int, status *grpcstatus.Status) ErrorExt
- func NewWithStatus(msg string, status *grpcstatus.Status) ErrorExt
- func Wrap(err error, msg string) ErrorExt
- func WrapWithSkip(err error, msg string, skip int) ErrorExt
- func WrapWithSkipAndStatus(err error, msg string, skip int, status *grpcstatus.Status) ErrorExt
- func WrapWithStatus(err error, msg string, status *grpcstatus.Status) ErrorExt
- type NotifyExt
- type StackFrame
func SetBaseFilePath
func SetBaseFilePath(path string)
SetBaseFilePath sets the base file path for linking source code with reported stack information
type ErrorExt
ErrorExt is the interface that defines a error, any ErrorExt implementors can use and override errors and notifier package
type ErrorExt interface {
// Callers returns the call poiners for the stack
Callers() []uintptr
// StackFrame returns the stack frame for the error
StackFrame() []StackFrame
//Cause returns the original error object that caused this error
Cause() error
//GRPCStatus allows ErrorExt to be treated as a GRPC Error
GRPCStatus() *grpcstatus.Status
// contains filtered or unexported methods
}
func New
func New(msg string) ErrorExt
New creates a new error with stack information
func NewWithSkip
func NewWithSkip(msg string, skip int) ErrorExt
NewWithSkip creates a new error skipping the number of function on the stack
func NewWithSkipAndStatus
func NewWithSkipAndStatus(msg string, skip int, status *grpcstatus.Status) ErrorExt
NewWithSkipAndStatus creates a new error skipping the number of function on the stack and GRPC status
func NewWithStatus
func NewWithStatus(msg string, status *grpcstatus.Status) ErrorExt
NewWithStatus creates a new error with statck information and GRPC status
func Wrap
func Wrap(err error, msg string) ErrorExt
Wrap wraps an existing error and appends stack information if it does not exists
func WrapWithSkip
func WrapWithSkip(err error, msg string, skip int) ErrorExt
WrapWithSkip wraps an existing error and appends stack information if it does not exists skipping the number of function on the stack
func WrapWithSkipAndStatus(err error, msg string, skip int, status *grpcstatus.Status) ErrorExt
WrapWithSkip wraps an existing error and appends stack information if it does not exists skipping the number of function on the stack along with GRPC status
func WrapWithStatus
func WrapWithStatus(err error, msg string, status *grpcstatus.Status) ErrorExt
Wrap wraps an existing error and appends stack information if it does not exists along with GRPC status
type NotifyExt
NotifyExt is the interface definition for notifier related options
type NotifyExt interface {
// ShouldNotify returns true if the error should be notified
ShouldNotify() bool
// Notified sets the error to be notified or not
Notified(status bool)
}
type StackFrame
StackFrame represents the stackframe for tracing exception
type StackFrame struct {
File string `json:"file"`
Line int `json:"line"`
Func string `json:"function"`
}
Generated by gomarkdoc