func newLoggingChain()

in logging.go [26:48]


func newLoggingChain() alice.Chain {
	logger := zerolog.New(os.Stdout).With().
		Timestamp().
		Logger()

	chain := alice.New(
		hlog.NewHandler(logger),
		hlog.AccessHandler(func(r *http.Request, status, size int, duration time.Duration) {
			hlog.FromRequest(r).Info().
				Str("method", r.Method).
				Str("url", r.URL.String()).
				Int("status", status).
				Int("size", size).
				Dur("duration", duration).
				Msg("")
		}),
		hlog.RemoteAddrHandler("ip"),
		hlog.UserAgentHandler("user_agent"),
		hlog.RefererHandler("referer"),
	)

	return chain
}