Keep logs for a set number of days

Logs grew forever. A daily prune-logs cron now deletes entries older
than the app setting logs_keep_days (Settings > General, super admin;
default AppData.LogsKeepDays, 90), with an index on logs.created_at.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-28 04:49:25 +01:00
co-authored by Claude Opus 5.5
parent 5f96004f13
commit ba9705980e
14 changed files with 278 additions and 3 deletions
+7
View File
@@ -4,6 +4,7 @@ import pruneBotsQueue from "./prune-bots-queue";
import cronClearJobSteps from "./clear-job-steps";
import pruneBotHookEvents from "./prune-bot-hook-events";
import cronPruneChatrooms from "./prune-chatrooms";
import pruneLogs from "./prune-logs";
import syncNotifyWatchers from "./sync-notify-watchers";
import cronSyncHarnessModels from "./sync-harness-models";
import syncComputers from "./sync-computers";
@@ -51,6 +52,12 @@ export default function cron() {
task: cronPruneChatrooms,
});
registerCronJob({
title: "prune-logs",
schedule: "@daily",
task: pruneLogs,
});
registerCronJob({
title: "sync-notify-watchers",
schedule: "*/5 * * * *",