diff options
| author | Kyren223 <Kyren223@proton.me> | 2025-07-06 15:04:08 +0300 |
|---|---|---|
| committer | Kyren223 <Kyren223@proton.me> | 2025-07-06 15:04:08 +0300 |
| commit | 21b4d14a2f6eb88ea3e05646794b802ac6d5a90c (patch) | |
| tree | 70045d5e9cddef2b6c4b1a5381d85c593032d7be /cmd/server | |
| parent | f80cb4a0fe26f5ebbb9658da671771dc79d416d6 (diff) | |
Fixed issues with timeout() function on the server and added automatic
log rotation every midnight (if the server is running at that time)
Diffstat (limited to 'cmd/server')
| -rw-r--r-- | cmd/server/main.go | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/cmd/server/main.go b/cmd/server/main.go index ac2b91d..c5d11a8 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -9,6 +9,7 @@ import ( "os/signal" "path/filepath" "syscall" + "time" "github.com/kyren223/eko/internal/server" "github.com/kyren223/eko/internal/server/api" @@ -61,8 +62,8 @@ func setupLogging() { rotator := &lumberjack.Logger{ Filename: filepath.Join(logDir, "server.log"), - MaxSize: 1, // megabytes TODO: switch this to a more reasonable size (100?) - MaxAge: 28, // days + MaxSize: 100, // megabytes + MaxAge: 28, // days } level := slog.LevelDebug @@ -78,4 +79,14 @@ func setupLogging() { logger := slog.New(handler) slog.SetDefault(logger) slog.SetLogLoggerLevel(level) // TODO: remove me after fully migrating to slog + + go func() { + for { + now := time.Now() + next := now.Truncate(24 * time.Hour).Add(24 * time.Hour) + time.Sleep(time.Until(next)) // sleep until next midnight + + rotator.Rotate() + } + }() } |
