mirror of
https://github.com/bluewave-labs/Checkmate.git
synced 2026-05-20 16:39:07 -05:00
max response time
This commit is contained in:
@@ -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) {
|
||||
|
||||
@@ -2,6 +2,7 @@ export interface MonitorStats {
|
||||
id: string;
|
||||
monitorId: string;
|
||||
avgResponseTime: number;
|
||||
maxResponseTime: number;
|
||||
totalChecks: number;
|
||||
totalUpChecks: number;
|
||||
totalDownChecks: number;
|
||||
|
||||
Reference in New Issue
Block a user