recovery

package
v0.0.0-...-fc4206c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2023 License: Apache-2.0 Imports: 10 Imported by: 1

Documentation

Overview

Package recovery can be used to add panic recovery middleware to the server.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(s *server.Server, opts ...Option) error

Register registers the panic recovery to the server.

Types

type Middleware

type Middleware struct {
	// contains filtered or unexported fields
}

Middleware is middleware for panic recovery.

func NewMiddleware

func NewMiddleware(opts ...Option) (*Middleware, error)

NewMiddleware returns new middleware for panic recovery.

func (*Middleware) RecoverHTTP

func (m *Middleware) RecoverHTTP(next http.Handler) http.Handler

RecoverHTTP recovers from panics in HTTP handlers.

func (*Middleware) RecoverPacket

func (m *Middleware) RecoverPacket(next packet.HandlerFunc) packet.HandlerFunc

RecoverPacket recovers from panics in packet handlers.

func (*Middleware) RecoverStream

func (m *Middleware) RecoverStream(next stream.HandlerFunc) stream.HandlerFunc

RecoverStream recovers from panics in stream handlers.

func (*Middleware) RecoverStreamingRPC

func (m *Middleware) RecoverStreamingRPC(srv interface{}, ss grpc.ServerStream, _ *grpc.StreamServerInfo, handler grpc.StreamHandler) (err error)

RecoverStreamingRPC recovers from panics in streaming RPCs.

func (*Middleware) RecoverUnaryRPC

func (m *Middleware) RecoverUnaryRPC(ctx context.Context, req interface{}, _ *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp interface{}, err error)

RecoverUnaryRPC recovers from panics in unary RPCs.

func (*Middleware) Register

func (m *Middleware) Register(s *server.Server) error

Register registers the panic recovery to the server.

type Option

type Option interface {
	// contains filtered or unexported methods
}

Option is an option for the panic recovery middleware.

func WithErrorToHTTPResponse

func WithErrorToHTTPResponse(f func(w http.ResponseWriter, r *http.Request, err error)) Option

WithErrorToHTTPResponse returns an option that sets the function to write errors to HTTP responses.

func WithPanicToError

func WithPanicToError(f func(ctx context.Context, p interface{}) error) Option

WithPanicToError returns an option that sets the function to convert panics to errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL