From 6324d62c84cf33b8c84d2559586aa4f029fd9cb2 Mon Sep 17 00:00:00 2001 From: DevMiner Date: Tue, 23 Jul 2024 18:59:02 +0200 Subject: [PATCH] fix(reqlog): only use `.{number}` for request logging when there's multiple values for a header --- request_logger.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/request_logger.go b/request_logger.go index 56b0a8e..7d03700 100644 --- a/request_logger.go +++ b/request_logger.go @@ -56,7 +56,13 @@ func RequestLogger(l zerolog.Logger, requestHeaders, responseHeaders bool) fiber if responseHeaders { for k, v := range r.ResponseHeaders { for i, vv := range v { - l2 = l2.Str(fmt.Sprintf("response.headers.%s.%d", k, i), vv) + attr := fmt.Sprintf("response.headers.%s", k) + + if len(v) != 1 { + attr = fmt.Sprintf("%s.%d", attr, i) + } + + l2 = l2.Str(attr, vv) } } }