From 72ecd20dd1b056ca4f9caa712da3b1a53e7c8b55 Mon Sep 17 00:00:00 2001 From: Dan Sosedoff Date: Thu, 1 Dec 2022 12:49:24 -0600 Subject: [PATCH] Handle logger levels --- pkg/api/logger.go | 9 ++++++++- pkg/cli/cli.go | 8 ++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/pkg/api/logger.go b/pkg/api/logger.go index 5aa2a45..9f87d0b 100644 --- a/pkg/api/logger.go +++ b/pkg/api/logger.go @@ -12,6 +12,8 @@ import ( const loggerMessage = "http_request" func RequestLogger(logger *logrus.Logger) gin.HandlerFunc { + debug := logger.Level > logrus.InfoLevel + return func(c *gin.Context) { start := time.Now() path := c.Request.URL.Path @@ -20,7 +22,7 @@ func RequestLogger(logger *logrus.Logger) gin.HandlerFunc { c.Next() // Skip logging static assets - if strings.Contains(path, "/static/") { + if strings.Contains(path, "/static/") && !debug { return } @@ -40,6 +42,11 @@ func RequestLogger(logger *logrus.Logger) gin.HandlerFunc { fields["error"] = err.Error() } + // Additional fields for debugging + if debug { + fields["raw_query"] = c.Request.URL.RawQuery + } + entry := logrus.WithFields(fields) switch { diff --git a/pkg/cli/cli.go b/pkg/cli/cli.go index 0ce7a20..8247da8 100644 --- a/pkg/cli/cli.go +++ b/pkg/cli/cli.go @@ -184,9 +184,13 @@ func printVersion() { } func startServer() { - router := gin.New() + logger := logrus.New() + if options.Debug { + logger.SetLevel(logrus.DebugLevel) + } - router.Use(api.RequestLogger(logrus.New())) + router := gin.New() + router.Use(api.RequestLogger(logger)) router.Use(gin.Recovery()) // Enable HTTP basic authentication only if both user and password are set