diff --git a/server/src/db/migration/0004_fixInfrastructureThresholds.ts b/server/src/db/migration/0004_fixInfrastructureThresholds.ts index 041f8a9dc..6d369f311 100644 --- a/server/src/db/migration/0004_fixInfrastructureThresholds.ts +++ b/server/src/db/migration/0004_fixInfrastructureThresholds.ts @@ -2,7 +2,7 @@ import { MonitorModel } from "../models/Monitor.js"; import { logger } from "@/utils/logger.js"; /** - * Fix infrastructure monitors that had thresholds incorrectly set to 5 + * Fix infrastructure monitors that had thresholds incorrectly set to 0 or 5 * due to the old default value. Updates them to 100 (disabled). */ export async function fixInfrastructureThresholds(): Promise { @@ -11,29 +11,24 @@ export async function fixInfrastructureThresholds(): Promise { try { logger.info({ service: SERVICE_NAME, message: "Starting infrastructure threshold fix" }); - const thresholdFields = [ - "cpuAlertThreshold", - "memoryAlertThreshold", - "diskAlertThreshold", - "tempAlertThreshold", - ]; + const thresholdFields = ["cpuAlertThreshold", "memoryAlertThreshold", "diskAlertThreshold", "tempAlertThreshold"]; - // Find hardware monitors with any threshold set to 5 + // Find hardware monitors with any threshold set to 0 or 5 const filter = { type: "hardware", - $or: thresholdFields.map((field) => ({ [field]: 5 })), + $or: thresholdFields.flatMap((field) => [{ [field]: 0 }, { [field]: 5 }]), }; const monitors = await MonitorModel.find(filter); if (monitors.length === 0) { - logger.info({ service: SERVICE_NAME, message: "No monitors with threshold value of 5 found" }); + logger.info({ service: SERVICE_NAME, message: "No monitors with threshold value of 0 or 5 found" }); return; } logger.info({ service: SERVICE_NAME, - message: `Found ${monitors.length} monitors with threshold value of 5`, + message: `Found ${monitors.length} monitors with threshold value of 0 or 5`, }); let updatedCount = 0; @@ -42,7 +37,7 @@ export async function fixInfrastructureThresholds(): Promise { const update: Record = {}; for (const field of thresholdFields) { - if ((monitor as any)[field] === 5) { + if ((monitor as any)[field] === 0 || (monitor as any)[field] === 5) { update[field] = 100; } } @@ -55,7 +50,7 @@ export async function fixInfrastructureThresholds(): Promise { logger.info({ service: SERVICE_NAME, - message: `Fixed ${updatedCount} monitors — thresholds updated from 5 to 100`, + message: `Fixed ${updatedCount} monitors — thresholds updated from 0/5 to 100`, }); } catch (error) { const errorMessage = error instanceof Error ? error.message : String(error);