diff --git a/internal/logger/logger.go b/internal/logger/logger.go index 549bceb0..97addc0c 100644 --- a/internal/logger/logger.go +++ b/internal/logger/logger.go @@ -55,6 +55,14 @@ func New(level, output string) *Logger { } func (l *Logger) Fatal(msg string, fields ...interface{}) { - l.Logger.Fatal(msg, zap.Any("fields", fields)) + zapFields := make([]zap.Field, 0, len(fields)) + for _, f := range fields { + switch v := f.(type) { + case error: + zapFields = append(zapFields, zap.Error(v)) + default: + zapFields = append(zapFields, zap.Any("field", v)) + } + } + l.Logger.Fatal(msg, zapFields...) } -