Skip to main content

Interface: Monitor

Defined in: shared/types.ts:238

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:240

Array of currently active operations for this monitor


baselineUrl?โ€‹

optional baselineUrl?: string

Defined in: shared/types.ts:242

Baseline origin URL when comparing CDN edge consistency


bodyKeyword?โ€‹

optional bodyKeyword?: string

Defined in: shared/types.ts:244

Keyword that must be present in HTTP response bodies


certificateWarningDays?โ€‹

optional certificateWarningDays?: number

Defined in: shared/types.ts:246

Certificate expiry warning threshold in days for SSL monitoring


checkIntervalโ€‹

checkInterval: number

Defined in: shared/types.ts:248

Interval between checks in milliseconds


edgeLocations?โ€‹

optional edgeLocations?: string

Defined in: shared/types.ts:250

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


expectedHeaderValue?โ€‹

optional expectedHeaderValue?: string

Defined in: shared/types.ts:252

Expected value for HTTP header verification


expectedJsonValue?โ€‹

optional expectedJsonValue?: string

Defined in: shared/types.ts:254

Expected value within a JSON payload


expectedStatusCode?โ€‹

optional expectedStatusCode?: number

Defined in: shared/types.ts:256

Expected HTTP status code for status-based HTTP monitors


expectedValue?โ€‹

optional expectedValue?: string

Defined in: shared/types.ts:258

Expected value for DNS record verification


followRedirects?โ€‹

optional followRedirects?: boolean

Defined in: shared/types.ts:260

Whether HTTP monitors should follow redirects (best-effort).


headerName?โ€‹

optional headerName?: string

Defined in: shared/types.ts:262

HTTP header name to inspect


heartbeatExpectedStatus?โ€‹

optional heartbeatExpectedStatus?: string

Defined in: shared/types.ts:264

Expected status string returned by heartbeat endpoints


heartbeatMaxDriftSeconds?โ€‹

optional heartbeatMaxDriftSeconds?: number

Defined in: shared/types.ts:266

Maximum tolerated heartbeat staleness in seconds


heartbeatStatusField?โ€‹

optional heartbeatStatusField?: string

Defined in: shared/types.ts:268

Field name (dot notation supported) that exposes heartbeat status


heartbeatTimestampField?โ€‹

optional heartbeatTimestampField?: string

Defined in: shared/types.ts:270

Field name (dot notation supported) that exposes heartbeat timestamp


historyโ€‹

history: StatusHistory[]

Defined in: shared/types.ts:272

Historical status data for analytics and trends


host?โ€‹

optional host?: string

Defined in: shared/types.ts:274

Hostname or IP address to monitor


idโ€‹

id: string

Defined in: shared/types.ts:276

Unique identifier for the monitor


jsonPath?โ€‹

optional jsonPath?: string

Defined in: shared/types.ts:278

JSON path expression used for HTTP JSON monitors


lastChecked?โ€‹

optional lastChecked?: Date

Defined in: shared/types.ts:280

Timestamp of the last check performed


maxPongDelayMs?โ€‹

optional maxPongDelayMs?: number

Defined in: shared/types.ts:282

Maximum acceptable delay before a WebSocket pong response (milliseconds)


maxReplicationLagSeconds?โ€‹

optional maxReplicationLagSeconds?: number

Defined in: shared/types.ts:284

Maximum allowable replication lag in seconds


maxResponseTime?โ€‹

optional maxResponseTime?: number

Defined in: shared/types.ts:286

Maximum allowed response time for latency monitors


monitoringโ€‹

monitoring: boolean

Defined in: shared/types.ts:288

Whether monitoring is currently active for this monitor


port?โ€‹

optional port?: number

Defined in: shared/types.ts:290

Port number for port-based monitoring


primaryStatusUrl?โ€‹

optional primaryStatusUrl?: string

Defined in: shared/types.ts:292

Primary node status endpoint used for replication comparisons


recordType?โ€‹

optional recordType?: DnsRecordType

Defined in: shared/types.ts:294

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


replicaStatusUrl?โ€‹

optional replicaStatusUrl?: string

Defined in: shared/types.ts:296

Replica node status endpoint used for replication comparisons


replicationTimestampField?โ€‹

optional replicationTimestampField?: string

Defined in: shared/types.ts:298

JSON field (dot notation supported) containing replication timestamps


responseTimeโ€‹

responseTime: number

Defined in: shared/types.ts:300

Latest response time measurement in milliseconds


retryAttemptsโ€‹

retryAttempts: number

Defined in: shared/types.ts:302

Number of retry attempts when a check fails


statusโ€‹

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

Defined in: shared/types.ts:304

Current status of the monitor


timeoutโ€‹

timeout: number

Defined in: shared/types.ts:306

Timeout for monitor checks in milliseconds


typeโ€‹

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

Defined in: shared/types.ts:310

Type of monitoring performed (see BASE_MONITOR_TYPES).


url?โ€‹

optional url?: string

Defined in: shared/types.ts:312

URL to monitor for HTTP-based checks