From 4ae16bce8c6aa8e3d96ca69015d2065badee3994 Mon Sep 17 00:00:00 2001 From: Daenney Date: Mon, 21 Aug 2023 20:07:55 +0200 Subject: [feature] Make log format configurable (#2130) * [feature] Don't emit timestamp in log lines When running gotosocial with a service manager like systemd, or a container runtime, the associated log driver usually emits timestamps itself. In those cases, having the extra timestamp from our own log lines ends up being a bit noisy and when centrally ingesting logs is duplicate information. This introduces a configuration flag that allows disabling emitting the timestamp. It's only wired up for "daemonised" processes, meaning server and testrig. * [chore] Add docs for log-timestamp * [feature] Simplify timestamp handling Co-Authored-By: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> * [chore] Less escaped double-quotes * [chore] Fix help string --------- Co-authored-by: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> --- testrig/config.go | 23 ++++++++++++----------- testrig/log.go | 1 + 2 files changed, 13 insertions(+), 11 deletions(-) (limited to 'testrig') diff --git a/testrig/config.go b/testrig/config.go index c5cbb2c80..a85a88477 100644 --- a/testrig/config.go +++ b/testrig/config.go @@ -33,17 +33,18 @@ func InitTestConfig() { } var testDefaults = config.Configuration{ - LogLevel: "info", - LogDbQueries: true, - ApplicationName: "gotosocial", - LandingPageUser: "", - ConfigPath: "", - Host: "localhost:8080", - AccountDomain: "localhost:8080", - Protocol: "http", - BindAddress: "127.0.0.1", - Port: 8080, - TrustedProxies: []string{"127.0.0.1/32", "::1"}, + LogLevel: "info", + LogTimestampFormat: "02/01/2006 15:04:05.000", + LogDbQueries: true, + ApplicationName: "gotosocial", + LandingPageUser: "", + ConfigPath: "", + Host: "localhost:8080", + AccountDomain: "localhost:8080", + Protocol: "http", + BindAddress: "127.0.0.1", + Port: 8080, + TrustedProxies: []string{"127.0.0.1/32", "::1"}, DbType: "sqlite", DbAddress: ":memory:", diff --git a/testrig/log.go b/testrig/log.go index 2761eb3f8..439ed72b0 100644 --- a/testrig/log.go +++ b/testrig/log.go @@ -26,6 +26,7 @@ import ( // InitTestLog sets the global logger to trace level for logging func InitTestLog() { + log.SetTimeFormat(config.GetLogTimestampFormat()) // Set the global log level from configuration if err := log.ParseLevel(config.GetLogLevel()); err != nil { log.Panicf(nil, "error parsing log level: %v", err) -- cgit v1.2.3