Skip to main content

Interface: Monitor

Defined in: shared/types.ts:232

Core monitor interface representing a single monitoring configuration.

Remarksโ€‹

Defines all properties required for monitoring a target resource. Contains both configuration (what to monitor) and state (current status, history).

Propertiesโ€‹

activeOperations?โ€‹

optional activeOperations: string[]

Defined in: shared/types.ts:234

Array of currently active operations for this monitor


baselineUrl?โ€‹

optional baselineUrl: string

Defined in: shared/types.ts:236

Baseline origin URL when comparing CDN edge consistency


bodyKeyword?โ€‹

optional bodyKeyword: string

Defined in: shared/types.ts:238

Keyword that must be present in HTTP response bodies


certificateWarningDays?โ€‹

optional certificateWarningDays: number

Defined in: shared/types.ts:240

Certificate expiry warning threshold in days for SSL monitoring


checkIntervalโ€‹

checkInterval: number

Defined in: shared/types.ts:242

Interval between checks in milliseconds


edgeLocations?โ€‹

optional edgeLocations: string

Defined in: shared/types.ts:244

Optional list of encoded CDN edge endpoints (comma or newline separated)


expectedHeaderValue?โ€‹

optional expectedHeaderValue: string

Defined in: shared/types.ts:246

Expected value for HTTP header verification


expectedJsonValue?โ€‹

optional expectedJsonValue: string

Defined in: shared/types.ts:248

Expected value within a JSON payload


expectedStatusCode?โ€‹

optional expectedStatusCode: number

Defined in: shared/types.ts:250

Expected HTTP status code for status-based HTTP monitors


expectedValue?โ€‹

optional expectedValue: string

Defined in: shared/types.ts:252

Expected value for DNS record verification


headerName?โ€‹

optional headerName: string

Defined in: shared/types.ts:254

HTTP header name to inspect


heartbeatExpectedStatus?โ€‹

optional heartbeatExpectedStatus: string

Defined in: shared/types.ts:256

Expected status string returned by heartbeat endpoints


heartbeatMaxDriftSeconds?โ€‹

optional heartbeatMaxDriftSeconds: number

Defined in: shared/types.ts:258

Maximum tolerated heartbeat staleness in seconds


heartbeatStatusField?โ€‹

optional heartbeatStatusField: string

Defined in: shared/types.ts:260

Field name (dot notation supported) that exposes heartbeat status


heartbeatTimestampField?โ€‹

optional heartbeatTimestampField: string

Defined in: shared/types.ts:262

Field name (dot notation supported) that exposes heartbeat timestamp


historyโ€‹

history: StatusHistory[]

Defined in: shared/types.ts:264

Historical status data for analytics and trends


host?โ€‹

optional host: string

Defined in: shared/types.ts:266

Hostname or IP address to monitor


idโ€‹

id: string

Defined in: shared/types.ts:268

Unique identifier for the monitor


jsonPath?โ€‹

optional jsonPath: string

Defined in: shared/types.ts:270

JSON path expression used for HTTP JSON monitors


lastChecked?โ€‹

optional lastChecked: Date

Defined in: shared/types.ts:272

Timestamp of the last check performed


maxPongDelayMs?โ€‹

optional maxPongDelayMs: number

Defined in: shared/types.ts:274

Maximum acceptable delay before a WebSocket pong response (milliseconds)


maxReplicationLagSeconds?โ€‹

optional maxReplicationLagSeconds: number

Defined in: shared/types.ts:276

Maximum allowable replication lag in seconds


maxResponseTime?โ€‹

optional maxResponseTime: number

Defined in: shared/types.ts:278

Maximum allowed response time for latency monitors


monitoringโ€‹

monitoring: boolean

Defined in: shared/types.ts:280

Whether monitoring is currently active for this monitor


port?โ€‹

optional port: number

Defined in: shared/types.ts:282

Port number for port-based monitoring


primaryStatusUrl?โ€‹

optional primaryStatusUrl: string

Defined in: shared/types.ts:284

Primary node status endpoint used for replication comparisons


recordType?โ€‹

optional recordType: string

Defined in: shared/types.ts:286

DNS record type to query (A, AAAA, CNAME, etc.)


replicaStatusUrl?โ€‹

optional replicaStatusUrl: string

Defined in: shared/types.ts:288

Replica node status endpoint used for replication comparisons


replicationTimestampField?โ€‹

optional replicationTimestampField: string

Defined in: shared/types.ts:290

JSON field (dot notation supported) containing replication timestamps


responseTimeโ€‹

responseTime: number

Defined in: shared/types.ts:292

Latest response time measurement in milliseconds


retryAttemptsโ€‹

retryAttempts: number

Defined in: shared/types.ts:294

Number of retry attempts when a check fails


statusโ€‹

status: "degraded" | "down" | "paused" | "pending" | "up"

Defined in: shared/types.ts:296

Current status of the monitor


timeoutโ€‹

timeout: number

Defined in: shared/types.ts:298

Timeout for monitor checks in milliseconds


typeโ€‹

type: "http" | "http-keyword" | "http-status" | "http-header" | "http-json" | "http-latency" | "port" | "ping" | "dns" | "ssl" | "websocket-keepalive" | "server-heartbeat" | "replication" | "cdn-edge-consistency"

Defined in: shared/types.ts:302

Type of monitoring performed (see BASE_MONITOR_TYPES).


url?โ€‹

optional url: string

Defined in: shared/types.ts:304

URL to monitor for HTTP-based checks