Documentation
¶
Index ¶
- Constants
- func GetServerMiddlewares(l *slog.Logger, tracer trace.Tracer, reg prometheus.Registerer) []func(ctx context.Context, req any, ...) (resp any, err error)
- func GetServerSecureMiddlewares(l *slog.Logger, tracer trace.Tracer, reg prometheus.Registerer) []func(ctx context.Context, req any, ...) (resp any, err error)
- type HeaderCarrier
- type HttpError
- type ServerMiddleware
- func AuthServerMiddleware() ServerMiddleware
- func HeadersServerMiddleware() ServerMiddleware
- func LoggerServerMiddleware(l *slog.Logger) ServerMiddleware
- func MonitoringServerMiddleware(reg prometheus.Registerer) ServerMiddleware
- func RecoveryServerMiddleware() ServerMiddleware
- func ResponseServerMiddleware() ServerMiddleware
- func TimeoutServerMiddleware() ServerMiddleware
- func TracingServerMiddleware(tracer trace.Tracer) ServerMiddleware
- func ValidationServerMiddleware() ServerMiddleware
Constants ¶
const (
ContextAuthToken = "auth_token"
)
Variables ¶
This section is empty.
Functions ¶
func GetServerMiddlewares ¶
func GetServerMiddlewares( l *slog.Logger, tracer trace.Tracer, reg prometheus.Registerer, ) []func(ctx context.Context, req any, handler func(ctx context.Context, req any) (resp any, err error)) (resp any, err error)
GetServerMiddlewares returns the default server middleware chain.
func GetServerSecureMiddlewares ¶
func GetServerSecureMiddlewares( l *slog.Logger, tracer trace.Tracer, reg prometheus.Registerer, ) []func(ctx context.Context, req any, handler func(ctx context.Context, req any) (resp any, err error)) (resp any, err error)
GetServerSecureMiddlewares returns the server middleware chain with authentication.
Types ¶
type HeaderCarrier ¶
HeaderCarrier adapts fiber.Ctx request headers to OTel propagation.TextMapCarrier.
func (*HeaderCarrier) Get ¶
func (c *HeaderCarrier) Get(key string) string
func (*HeaderCarrier) Keys ¶
func (c *HeaderCarrier) Keys() []string
func (*HeaderCarrier) Set ¶
func (c *HeaderCarrier) Set(key, value string)
type ServerMiddleware ¶
type ServerMiddleware = func(ctx context.Context, req any, handler func(ctx context.Context, req any) (resp any, err error)) (resp any, err error)
func AuthServerMiddleware ¶
func AuthServerMiddleware() ServerMiddleware
AuthServerMiddleware extracts Bearer token from Authorization header.
func HeadersServerMiddleware ¶
func HeadersServerMiddleware() ServerMiddleware
HeadersServerMiddleware sets HTTP status code based on error type.
func LoggerServerMiddleware ¶
func LoggerServerMiddleware(l *slog.Logger) ServerMiddleware
LoggerServerMiddleware logs requests and responses with slog.
func MonitoringServerMiddleware ¶
func MonitoringServerMiddleware(reg prometheus.Registerer) ServerMiddleware
MonitoringServerMiddleware tracks request metrics with Prometheus.
func RecoveryServerMiddleware ¶
func RecoveryServerMiddleware() ServerMiddleware
RecoveryServerMiddleware recovers from panics. Sets status code and response body directly because panic recovery bypasses inner middlewares.
func ResponseServerMiddleware ¶
func ResponseServerMiddleware() ServerMiddleware
ResponseServerMiddleware converts errors to response body.
func TimeoutServerMiddleware ¶
func TimeoutServerMiddleware() ServerMiddleware
TimeoutServerMiddleware sets a timeout for request processing.
func TracingServerMiddleware ¶
func TracingServerMiddleware(tracer trace.Tracer) ServerMiddleware
TracingServerMiddleware creates OpenTelemetry spans for incoming requests.
func ValidationServerMiddleware ¶
func ValidationServerMiddleware() ServerMiddleware
ValidationServerMiddleware validates requests.