2025-08-24 20:11:34 +02:00
|
|
|
import cron from "node-cron";
|
2025-08-27 21:16:13 +02:00
|
|
|
import {retentionCleanTask} from "@/lib/tasks/database";
|
2025-09-23 21:19:11 +02:00
|
|
|
import {env} from "@/env.mjs";
|
2026-02-17 08:47:57 +01:00
|
|
|
import {backupCleanTask} from "@/lib/tasks/cleaning";
|
2026-03-28 16:35:02 +01:00
|
|
|
import {
|
|
|
|
|
checkAgentsHealthError,
|
|
|
|
|
checkDatabasesHealthError,
|
|
|
|
|
deleteHealthLogsOlderThan12h
|
|
|
|
|
} from "@/db/services/healthcheck";
|
2025-08-24 20:11:34 +02:00
|
|
|
|
2025-09-23 21:19:11 +02:00
|
|
|
export const retentionJob = cron.schedule(env.RETENTION_CRON, async () => {
|
2025-08-24 20:11:34 +02:00
|
|
|
try {
|
|
|
|
|
console.log("Retention Job : Starting task");
|
|
|
|
|
await retentionCleanTask();
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error(`[CRON] Error:`, err);
|
|
|
|
|
}
|
2026-02-17 08:47:57 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export const cleaningJob = cron.schedule("* * * * *", async () => {
|
|
|
|
|
try {
|
|
|
|
|
console.log("Cleaning Job : Starting task");
|
|
|
|
|
await backupCleanTask();
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error(`[CRON] Error:`, err);
|
|
|
|
|
}
|
2026-03-28 16:35:02 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export const cleaningHealthcheckLogsJob = cron.schedule(env.CLEANING_HEALTHCHECK_LOGS_CRON, async () => {
|
|
|
|
|
try {
|
|
|
|
|
console.log("Cleaning Healthcheck Logs Job : Starting task");
|
|
|
|
|
await deleteHealthLogsOlderThan12h();
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error(`[CRON] Error:`, err);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export const healthcheckAgentAndDatabaseJob = cron.schedule(env.HEALTHCHECK_CRON, async () => {
|
|
|
|
|
try {
|
|
|
|
|
console.log("Healthcheck Job : Starting task");
|
|
|
|
|
await checkAgentsHealthError();
|
|
|
|
|
await checkDatabasesHealthError()
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.error(`[CRON] Error:`, err);
|
|
|
|
|
}
|
2025-08-24 20:11:34 +02:00
|
|
|
});
|