alerting
Alerting

Alert routes, on-call & maintenance

One alerting pipeline for everything that fires — monitors, hosts, watches, report rules. Match alerts to routes, escalate through tiers, page the person on call, and suppress noise during planned work.

Read
6 min
Sections
3
Plans
Routes Pro+

Alert routes

A route decides where an alert goes. Each route has a match (by severity — info, minor, major, critical — and source — monitor, host, watch, report rule) and an ordered list of escalation steps. Routes are evaluated by priority; the first matching route wins.

Each step targets a delivery channel (Slack, Discord, webhook, PagerDuty, Opsgenie, …) and a delay. Tier 1 fires immediately; later tiers fire after their delay if the alert is still unacknowledged — that’s your escalation.

http
POST /api/v1/alert-routes
Authorization: Bearer <token>
Content-Type: application/json

{
  "name": "Critical → PagerDuty",
  "priority": 0,
  "matchJson": "{\"severity\":\"critical\",\"source\":\"monitor\"}",
  "stepsJson": "[
    {\"channelId\":\"slack-uuid\",\"delaySec\":0},
    {\"channelId\":\"pagerduty-uuid\",\"delaySec\":300,\"onCallScheduleId\":\"sched-uuid\"}
  ]"
}

On-call schedules

An on-call schedule is a rotation of workspace members with a timezone and a cadence (daily or weekly). The order you pick members in is the rotation order. An escalation step can target “whoever is on call” instead of a fixed person — DataRunner resolves the current on-call member at fire time, and one-off overrides cover swaps.

Maintenance windows

Planned work shouldn’t page anyone. A maintenance window suppresses alerts for a chosen scope — the whole workspace, a single monitor, or a single host — between a start and end time. Anything that would have fired inside the window is silenced; everything resumes automatically when it ends.

Build the chain end to end: a monitor or hostopens an incident → a route matches it → tier 1 posts to Slack → tier 2 pages the on-call engineer if it’s still open — unless a maintenance window is active.