From bb14f9121e9fdd96a918fb11a3f06c563023e08e Mon Sep 17 00:00:00 2001 From: Amir Raminfar Date: Thu, 9 Feb 2023 09:46:46 -0800 Subject: [PATCH] Properly handles casting of string. Fixes #2041 (#2042) --- docker/log_iterator.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docker/log_iterator.go b/docker/log_iterator.go index 8367d13b..99108ad5 100644 --- a/docker/log_iterator.go +++ b/docker/log_iterator.go @@ -115,7 +115,7 @@ func (g *eventGenerator) consume() { logEvent.Level = guessLogLevel(logEvent) g.channel <- logEvent } - + if readerError != nil { g.lastError = readerError close(g.channel) @@ -125,7 +125,7 @@ func (g *eventGenerator) consume() { } var NON_ASCII_REGEX = regexp.MustCompile("^[^a-z ]+[^ewidtf]?") -var KEY_VALUE_REGEX = regexp.MustCompile("level=([^ ]+)") +var KEY_VALUE_REGEX = regexp.MustCompile(`level=(\w+)`) func guessLogLevel(logEvent *LogEvent) string { switch value := logEvent.Message.(type) { @@ -145,8 +145,8 @@ func guessLogLevel(logEvent *LogEvent) string { } case map[string]interface{}: - if value["level"] != nil { - return strings.ToLower(value["level"].(string)) + if level, ok := value["level"].(string); ok { + return level } }