Prerequisites
Prerequisites
- At least two alert channels created — see Alerting guide
- A notification policy — see First alert
Build a three-tier chain
This example implements a common escalation pattern: team Slack → on-call PagerDuty → management email.Verify the escalation
Test with a failing monitor:Watch for:
- Slack notification arrives immediately
- If no one acknowledges within 10 minutes → PagerDuty pages on-call
- PagerDuty repeats every 5 minutes until acknowledged
- If still unacknowledged at 30 minutes → management email
How the chain executes
Acknowledgment options
| Method | How |
|---|---|
| PagerDuty/OpsGenie | Acknowledge the alert in the external system |
| DevHelm API | POST /api/v1/notification-dispatches/<id>/acknowledge |
Resolution behavior
TheonResolve field controls what happens when the incident resolves:
| Setting | Behavior |
|---|---|
notify_all_steps | All notified steps get a resolution message |
notify_current_step | Only the active step gets notified |
silent | No resolution message (PagerDuty/OpsGenie still auto-close) |
Variations
Two-tier: Slack then PagerDuty
Two-tier: Slack then PagerDuty
Immediate multi-channel (no escalation)
Immediate multi-channel (no escalation)
Time-of-day routing
Time-of-day routing
Create two notification policies at the same priority — one matching business-hours tags and one matching after-hours. The escalation chains can differ (e.g., Slack-only during the day, PagerDuty after hours).
Next steps
Escalation chains reference
Full step configuration and behavior options.
Alert routing by tag
Route different monitors to different escalation chains.
Testing your alerts
Validate the full escalation pipeline.