fix: Clear all statistics and clear heartbeats not resetting uptime statistics of monitors (#6398)

This commit is contained in:
Sn0r1ax
2025-11-23 04:46:32 +00:00
committed by GitHub
parent 23498e4134
commit 082e4b9712
2 changed files with 51 additions and 7 deletions
+7 -7
View File
@@ -109,6 +109,7 @@ const { login } = require("./auth");
const passwordHash = require("./password-hash");
const { Prometheus } = require("./prometheus");
const { UptimeCalculator } = require("./uptime-calculator");
const hostname = config.hostname;
@@ -1592,9 +1593,11 @@ let needSetup = false;
log.info("manage", `Clear Heartbeats Monitor: ${monitorID} User ID: ${socket.userID}`);
await R.exec("DELETE FROM heartbeat WHERE monitor_id = ?", [
monitorID
]);
await UptimeCalculator.clearStatistics(monitorID);
if (monitorID in server.monitorList) {
await restartMonitor(socket.userID, monitorID);
}
await sendHeartbeatList(socket, monitorID, true, true);
@@ -1616,10 +1619,7 @@ let needSetup = false;
log.info("manage", `Clear Statistics User ID: ${socket.userID}`);
await R.exec("DELETE FROM heartbeat");
await R.exec("DELETE FROM stat_daily");
await R.exec("DELETE FROM stat_hourly");
await R.exec("DELETE FROM stat_minutely");
await UptimeCalculator.clearAllStatistics();
// Restart all monitors to reset the stats
for (let monitorID in server.monitorList) {