From e08ccf5f3dc42f5f2bb56b925113b3350ab1fb81 Mon Sep 17 00:00:00 2001 From: Rerowros <85008083+Rerowros@users.noreply.github.com> Date: Sun, 10 May 2026 22:42:20 +0700 Subject: [PATCH 1/2] fix(wireguard): emit UTC log timestamps --- backend/wireguard/log.go | 4 ++-- backend/wireguard/wireguard_lifecycle_test.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/wireguard/log.go b/backend/wireguard/log.go index 01093c4..52bb3e6 100644 --- a/backend/wireguard/log.go +++ b/backend/wireguard/log.go @@ -8,7 +8,7 @@ import ( type logSeverity string const ( - wireGuardLogTimestampFormat = "2006/01/02 15:04:05.000000" + wireGuardLogTimestampFormat = "2006-01-02T15:04:05.000000Z07:00" logSeverityInfo logSeverity = "Info" logSeverityWarning logSeverity = "Warning" @@ -16,7 +16,7 @@ const ( ) func formatWireGuardLogLine(severity logSeverity, message string) string { - timestamp := time.Now().Format(wireGuardLogTimestampFormat) + timestamp := time.Now().UTC().Format(wireGuardLogTimestampFormat) return fmt.Sprintf("%s [%s] %s", timestamp, severity, message) } diff --git a/backend/wireguard/wireguard_lifecycle_test.go b/backend/wireguard/wireguard_lifecycle_test.go index 0dae9cc..0c8c1c1 100644 --- a/backend/wireguard/wireguard_lifecycle_test.go +++ b/backend/wireguard/wireguard_lifecycle_test.go @@ -163,7 +163,7 @@ func TestWireGuardNewInitializesWithSingleConfigureCallIncludingPeers(t *testing select { case startupLog := <-wg.Logs(): - pattern := regexp.MustCompile(`^\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{6} \[Info\] WireGuard interface wg-test initialized successfully$`) + pattern := regexp.MustCompile(`^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z \[Info\] WireGuard interface wg-test initialized successfully$`) if !pattern.MatchString(startupLog) { t.Fatalf("expected startup log with timestamp prefix, got %q", startupLog) } From 0bab76d9320fddd60ed238d4f6614e9b1a0e6516 Mon Sep 17 00:00:00 2001 From: Rerowros <85008083+Rerowros@users.noreply.github.com> Date: Mon, 11 May 2026 22:17:21 +0700 Subject: [PATCH 2/2] fix(wireguard): keep UTC logs in standard format --- backend/wireguard/log.go | 2 +- backend/wireguard/wireguard_lifecycle_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/wireguard/log.go b/backend/wireguard/log.go index 52bb3e6..2b55fa5 100644 --- a/backend/wireguard/log.go +++ b/backend/wireguard/log.go @@ -8,7 +8,7 @@ import ( type logSeverity string const ( - wireGuardLogTimestampFormat = "2006-01-02T15:04:05.000000Z07:00" + wireGuardLogTimestampFormat = "2006/01/02 15:04:05" logSeverityInfo logSeverity = "Info" logSeverityWarning logSeverity = "Warning" diff --git a/backend/wireguard/wireguard_lifecycle_test.go b/backend/wireguard/wireguard_lifecycle_test.go index 0c8c1c1..b7dd2d6 100644 --- a/backend/wireguard/wireguard_lifecycle_test.go +++ b/backend/wireguard/wireguard_lifecycle_test.go @@ -163,7 +163,7 @@ func TestWireGuardNewInitializesWithSingleConfigureCallIncludingPeers(t *testing select { case startupLog := <-wg.Logs(): - pattern := regexp.MustCompile(`^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z \[Info\] WireGuard interface wg-test initialized successfully$`) + pattern := regexp.MustCompile(`^\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2} \[Info\] WireGuard interface wg-test initialized successfully$`) if !pattern.MatchString(startupLog) { t.Fatalf("expected startup log with timestamp prefix, got %q", startupLog) }