max response time

This commit is contained in:
Alex Holliday
2026-02-17 22:47:37 +00:00
parent 7856317e8f
commit 3bd6ec5d28
4 changed files with 12 additions and 0 deletions
+4
View File
@@ -24,6 +24,10 @@ const MonitorStatsSchema = new Schema<MonitorStatsDocument>(
type: Number,
default: 0,
},
maxResponseTime: {
type: Number,
default: 0,
},
totalChecks: {
type: Number,
default: 0,
@@ -20,6 +20,7 @@ class MongoMonitorStatsRepository implements IMonitorStatsRepository {
id: toStringId(doc._id),
monitorId: toStringId(doc.monitorId),
avgResponseTime: doc.avgResponseTime,
maxResponseTime: doc.maxResponseTime,
totalChecks: doc.totalChecks,
totalUpChecks: doc.totalUpChecks,
totalDownChecks: doc.totalDownChecks,
@@ -68,6 +68,7 @@ export class StatusService implements IStatusService {
stats = {
monitorId,
avgResponseTime: 0,
maxResponseTime: 0,
totalChecks: 0,
totalUpChecks: 0,
totalDownChecks: 0,
@@ -82,6 +83,11 @@ export class StatusService implements IStatusService {
// Last response time
stats.lastResponseTime = responseTime ?? 0;
// Max response time
if (responseTime && responseTime > stats.maxResponseTime) {
stats.maxResponseTime = responseTime;
}
// Avg response time:
let avgResponseTime = stats.avgResponseTime;
if (typeof responseTime !== "undefined" && responseTime !== null) {
+1
View File
@@ -2,6 +2,7 @@ export interface MonitorStats {
id: string;
monitorId: string;
avgResponseTime: number;
maxResponseTime: number;
totalChecks: number;
totalUpChecks: number;
totalDownChecks: number;