Documentation ¶
Overview ¶
Package logginghandler is a simple, zerolog based, request logging http middleware. It also sets `X-Request-ID` in the request and response headers.
Example ¶
package main import ( "net/http" "github.com/rs/zerolog/log" "go.xsfx.dev/logginghandler" ) func main() { logger := log.With().Logger() handler := logginghandler.Handler( logger, )( http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { logger := logginghandler.FromRequest(r) logger.Info().Msg("this is a request") w.WriteHeader(http.StatusOK) }), ) http.Handle("/", handler) log.Fatal().Msg(http.ListenAndServe(":5000", nil).Error()) }
Output:
Index ¶
Examples ¶
Constants ¶
View Source
const ( UUIDKey = "uuid" UUIDHeader = "X-Request-ID" )
Variables ¶
This section is empty.
Functions ¶
func FromCtx ¶ added in v0.4.0
FromCtx returns a logger set from ctx. If no one could be found, it will return the global one.
func FromRequest ¶ added in v0.4.0
FromRequest returns a logger set from request. If no one could be found, it will return the global one.
func GetUUID ¶
GetUUID gets the requests UUID from a request.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.