func Cause(err error) error
Cause returns the underlying cause of the error, if possible. An error value has a cause if it implements the following interface:
type causer interface { Cause() error }
If the error does not implement Cause, the original error will be returned. If the error is nil, nil will be returned without further investigation.
func WithStack(err error) error
WithStack mirror pkg/errors.WithStack but does not wrap existing stack traces.
DebugCarrier can be implemented by an error to support error contexts.
type DebugCarrier interface { // Debug returns debugging information for the error, if applicable. Debug() string }
DetailsCarrier can be implemented by an error to support error contexts.
type DetailsCarrier interface { // Details returns details on the error, if applicable. Details() map[string]interface{} }
ReasonCarrier can be implemented by an error to support error contexts.
type ReasonCarrier interface { // Reason returns the reason for the error, if applicable. Reason() string }
RequestIDCarrier can be implemented by an error to support error contexts.
type RequestIDCarrier interface { // RequestID returns the ID of the request that caused the error, if applicable. RequestID() string }
type StackTracer interface { StackTrace() errors.StackTrace }
StatusCarrier can be implemented by an error to support error contexts.
type StatusCarrier interface { // ID returns the error id, if applicable. Status() string }
StatusCodeCarrier can be implemented by an error to support setting status codes in the error itself.
type StatusCodeCarrier interface { // StatusCode returns the status code of this error. StatusCode() int }