diff --git a/pkg/util/log/slog/wrapper.go b/pkg/util/log/slog/wrapper.go index 88963b1ccc016e..0502723162d627 100644 --- a/pkg/util/log/slog/wrapper.go +++ b/pkg/util/log/slog/wrapper.go @@ -75,7 +75,7 @@ func (w *Wrapper) handle(level types.LogLevel, message string) { var pc [1]uintptr runtime.Callers(baseStackDepth+w.extraStackDepth, pc[:]) r := slog.NewRecord( - time.Now().UTC(), + time.Now(), types.ToSlogLevel(level), message, pc[0], diff --git a/pkg/util/log/slog/wrapper_test.go b/pkg/util/log/slog/wrapper_test.go index def7e92e03229a..665580a683ba83 100644 --- a/pkg/util/log/slog/wrapper_test.go +++ b/pkg/util/log/slog/wrapper_test.go @@ -488,3 +488,17 @@ func TestLoggingToClosedWrapperDoesNotCallHandler(t *testing.T) { // Verify that handler was never called (no records logged) assert.Empty(t, handler.records, "handler should not be called after wrapper is closed") } + +func TestRecordTimeZone(t *testing.T) { + if runtime.GOOS == "windows" { + t.Skip("Windows uses syscalls to get the timezone, so we can't test it") + } + + t.Setenv("TZ", "CET") + handler := newMockHandler() + wrapper := NewWrapper(handler) + + wrapper.Info("test message") + record := handler.lastRecord() + assert.Equal(t, "CET", record.Time.Location().String()) +}