Skip to main content
Notification policies control which incidents trigger which alert channels. Each policy combines match rules (what to alert on) with an escalation chain (how to alert).
Define this in code. Manage notification policies as part of your monitoring-as-code workflow: YAML format · Terraform · CI/CD patterns

How matching works

When an incident is confirmed, DevHelm evaluates all enabled notification policies in priority order (highest priority first). All matching policies execute — there is no “first match wins” behavior. A policy matches when all of its match rules pass (AND logic). A policy with no match rules is a catch-all that matches every incident.

Match rules

Each match rule filters incidents on a specific attribute:

Severity ordering

Severity comparison uses: DOWN > DEGRADED > MAINTENANCE. A severity_gte rule with value DEGRADED matches both DOWN and DEGRADED incidents but not MAINTENANCE.

Match rule fields

Priority

The priority field (integer, default 0) controls evaluation order. Higher values are evaluated first. While all matching policies run, priority determines which escalation chains start first when multiple policies match simultaneously. Use priority to structure a tiered alerting strategy:

Creating a policy

The CLI covers the simple case: a policy that notifies one or more channels immediately. For priority, match rules, and multi-step escalation, use the API (below) or YAML config-as-code.

Request fields

Catch-all policies

A policy with an empty matchRules array matches every incident. Use a low-priority catch-all as a safety net:

Testing a policy

Dry-run match rules against a hypothetical incident to verify routing before real incidents arrive:

Policy fields

Next steps

Escalation chains

Build multi-step escalation with delays and acknowledgment.

Alert channels

Configure the destinations referenced by escalation steps.

Alert suppression

Suppress alerts during maintenance and via resource groups.