Documentation
¶
Overview ¶
Package errors provides structured application errors.
Index ¶
- Variables
- func As(err error, target any) bool
- func E(args ...any) error
- func Is(err, target error) bool
- func Join(errs ...error) error
- func LogDetailAttrs(err error) []slog.Attr
- func StatusCode(err error) int
- func Unwrap(err error) error
- func UserMsg(err error) string
- type Error
- type Kind
- type KindCarrier
- type UserMessage
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Unknown = Kind{} InvalidArgument = Kind{Code: "invalid_argument", Status: http.StatusBadRequest} InvalidInput = Kind{Code: "invalid_input", Status: http.StatusUnprocessableEntity} Unauthenticated = Kind{Code: "unauthenticated", Status: http.StatusUnauthorized} PermissionDenied = Kind{Code: "permission_denied", Status: http.StatusForbidden} NotFound = Kind{Code: "not_found", Status: http.StatusNotFound} MethodNotAllowed = Kind{Code: "method_not_allowed", Status: http.StatusMethodNotAllowed} Conflict = Kind{Code: "conflict", Status: http.StatusConflict} FailedPrecondition = Kind{Code: "failed_precondition", Status: http.StatusPreconditionFailed} PayloadTooLarge = Kind{Code: "payload_too_large", Status: http.StatusRequestEntityTooLarge} ResourceExhausted = Kind{Code: "resource_exhausted", Status: http.StatusTooManyRequests} Internal = Kind{Code: "internal", Status: http.StatusInternalServerError} Unimplemented = Kind{Code: "unimplemented", Status: http.StatusNotImplemented} Canceled = Kind{Code: "canceled", Status: http.StatusServiceUnavailable} DeadlineExceeded = Kind{Code: "deadline_exceeded", Status: http.StatusServiceUnavailable} BadGateway = Kind{Code: "bad_gateway", Status: http.StatusBadGateway} )
Functions ¶
func LogDetailAttrs ¶
LogDetailAttrs returns structured error details safe for logs.
func StatusCode ¶
StatusCode returns the HTTP status code implied by err.
Types ¶
type Kind ¶
Kind classifies errors at application boundaries.
func KindFromStatus ¶
type KindCarrier ¶
type KindCarrier interface {
ErrorKind() Kind
}
KindCarrier is implemented by custom error types that can provide an application kind.
Click to show internal directories.
Click to hide internal directories.