From af7b5d9478df3da1a46e14e39fafb9fe475b0c0f Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Sun, 19 May 2024 15:53:09 +0200 Subject: use zap for logging http requests as well --- internal/server/logging.go | 21 +++++++++------------ internal/server/server.go | 9 --------- 2 files changed, 9 insertions(+), 21 deletions(-) (limited to 'internal') diff --git a/internal/server/logging.go b/internal/server/logging.go index 135f06e..fcdab18 100644 --- a/internal/server/logging.go +++ b/internal/server/logging.go @@ -1,9 +1,8 @@ package server import ( - "fmt" - "io" "net/http" + "website/internal/log" ) type loggingResponseWriter struct { @@ -25,7 +24,6 @@ func NewLoggingResponseWriter(w http.ResponseWriter) *loggingResponseWriter { type wrappedHandlerOptions struct { defaultHostname string - logger io.Writer } func wrapHandlerWithLogging(wrappedHandler http.Handler, opts wrappedHandlerOptions) http.Handler { @@ -41,15 +39,14 @@ func wrapHandlerWithLogging(wrappedHandler http.Handler, opts wrappedHandlerOpti lw := NewLoggingResponseWriter(w) wrappedHandler.ServeHTTP(lw, r) statusCode := lw.statusCode - fmt.Fprintf( - opts.logger, - "%s %s %d %s %s %s\n", - scheme, - r.Method, - statusCode, - host, - r.URL.Path, - lw.Header().Get("Location"), + log.Info( + "http request", + "scheme", scheme, + "method", r.Method, + "status", statusCode, + "host", host, + "path", r.URL.Path, + "location", lw.Header().Get("Location"), ) }) } diff --git a/internal/server/server.go b/internal/server/server.go index 62e32d5..b4cfc7f 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -3,7 +3,6 @@ package server import ( "context" "fmt" - "io" "mime" "net" "net/http" @@ -19,7 +18,6 @@ import ( "github.com/getsentry/sentry-go" sentryhttp "github.com/getsentry/sentry-go/http" "github.com/pkg/errors" - "github.com/shengyanli1982/law" ) var config *cfg.Config @@ -168,17 +166,10 @@ func New(runtimeConfig *Config) (*Server, error) { http.Redirect(w, r, newURL, 301) }) - var logWriter io.Writer - if runtimeConfig.Production { - logWriter = law.NewWriteAsyncer(os.Stdout, nil) - } else { - logWriter = os.Stdout - } top.Handle("/", sentryHandler.Handle( wrapHandlerWithLogging(mux, wrappedHandlerOptions{ defaultHostname: runtimeConfig.BaseURL.Hostname(), - logger: logWriter, }), ), ) -- cgit 1.4.1