Files
portabase/src/lib/tasks/index.ts
T

47 lines
1.4 KiB
TypeScript
Raw Normal View History

2025-08-24 20:11:34 +02:00
import cron from "node-cron";
import {retentionCleanTask} from "@/lib/tasks/database";
2025-09-23 21:19:11 +02:00
import {env} from "@/env.mjs";
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);
}
});
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
});