diff options
Diffstat (limited to 'internal/logging/logging.go')
-rw-r--r-- | internal/logging/logging.go | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/internal/logging/logging.go b/internal/logging/logging.go index 28c43c2e..4ba86985 100644 --- a/internal/logging/logging.go +++ b/internal/logging/logging.go @@ -65,20 +65,33 @@ func getExtraLogFields(r *http.Request) log.Fields { } } -// AccessLogger configures the GitLab pages HTTP access logger middleware -func AccessLogger(handler http.Handler, format string) (http.Handler, error) { - +// BasicAccessLogger configures the GitLab pages basic HTTP access logger middleware +func BasicAccessLogger(handler http.Handler, format string, extraFields log.ExtraFieldsGeneratorFunc) (http.Handler, error) { accessLogger, err := getAccessLogger(format) if err != nil { return nil, err } + if extraFields == nil { + extraFields = func(r *http.Request) log.Fields { + return log.Fields{ + "pages_https": request.IsHTTPS(r), + "pages_host": r.Host, + } + } + } + return log.AccessLogger(handler, - log.WithExtraFields(getExtraLogFields), + log.WithExtraFields(extraFields), log.WithAccessLogger(accessLogger), ), nil } +// AccessLogger configures the GitLab pages HTTP access logger middleware with extra log fields +func AccessLogger(handler http.Handler, format string) (http.Handler, error) { + return BasicAccessLogger(handler, format, getExtraLogFields) +} + // LogRequest will inject request host and path to the logged messages func LogRequest(r *http.Request) *logrus.Entry { return log.WithFields(log.Fields{ |