middleware

package
v1.3.2 Latest Latest
Warning

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

Go to latest
Published: Feb 17, 2023 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Logging

func Logging(next http.Handler, logger LoggerWithContext) http.Handler

func LoggingN added in v1.1.0

func LoggingN(logger LoggerWithContext) func(next http.Handler) http.Handler

func Measurement

func Measurement(next http.Handler, serv MetricsService, patternFunc MatchedRoutePatternFunc) http.Handler

func MeasurementN added in v1.1.0

func MeasurementN(serv MetricsService, patternFunc MatchedRoutePatternFunc) func(next http.Handler) http.Handler

func PanicRecovery

func PanicRecovery(next http.Handler, logger LoggerWithContext) http.Handler

func PanicRecoveryN added in v1.1.0

func PanicRecoveryN(logger LoggerWithContext) func(next http.Handler) http.Handler

Types

type Logger

type Logger interface {
	Print(v ...any)
	Printf(format string, v ...any)
	Println(v ...any)

	Error(v ...any)
	Errorf(format string, v ...any)
	Errorln(v ...any)
}

type LoggerWithContext added in v1.1.0

type LoggerWithContext interface {
	Logger
	WithContext(ctx context.Context) Logger
}

type MatchedRoutePatternFunc added in v1.2.0

type MatchedRoutePatternFunc func(r *http.Request) string

type MetricsData

type MetricsData struct {
	StatusCode int
	Method     string
	Route      string
	Elapsed    time.Duration
}

type MetricsService

type MetricsService interface {
	Responded(data MetricsData)
}

Jump to

Keyboard shortcuts

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