From 373ea8d7e412b29c93df3eeaeb4a2b29c29645bf Mon Sep 17 00:00:00 2001 From: Thurston Sandberg Date: Wed, 3 Dec 2025 05:54:38 -0500 Subject: [PATCH] fix(logging): handle nil caller in LogFormatter to prevent panic --- internal/logging/global_logger.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/internal/logging/global_logger.go b/internal/logging/global_logger.go index 9d4e1fc9..28fde213 100644 --- a/internal/logging/global_logger.go +++ b/internal/logging/global_logger.go @@ -38,7 +38,13 @@ func (m *LogFormatter) Format(entry *log.Entry) ([]byte, error) { timestamp := entry.Time.Format("2006-01-02 15:04:05") message := strings.TrimRight(entry.Message, "\r\n") - formatted := fmt.Sprintf("[%s] [%s] [%s:%d] %s\n", timestamp, entry.Level, filepath.Base(entry.Caller.File), entry.Caller.Line, message) + + var formatted string + if entry.Caller != nil { + formatted = fmt.Sprintf("[%s] [%s] [%s:%d] %s\n", timestamp, entry.Level, filepath.Base(entry.Caller.File), entry.Caller.Line, message) + } else { + formatted = fmt.Sprintf("[%s] [%s] %s\n", timestamp, entry.Level, message) + } buffer.WriteString(formatted) return buffer.Bytes(), nil