summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2025-07-06 15:04:08 +0300
committerKyren223 <Kyren223@proton.me>2025-07-06 15:04:08 +0300
commit21b4d14a2f6eb88ea3e05646794b802ac6d5a90c (patch)
tree70045d5e9cddef2b6c4b1a5381d85c593032d7be /cmd
parentf80cb4a0fe26f5ebbb9658da671771dc79d416d6 (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')
-rw-r--r--cmd/server/main.go15
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()
+ }
+ }()
}