Alerts and Notifications
Configure channels, rules, cooldowns, and test notifications.
Project alerts live at /dashboard/projects/[id]/alerts.
Channel types
- Discord webhook
- Slack webhook
- Telegram bot token + chat ID
- Email recipients list
- Generic webhook URL (+ optional headers/auth)
Channel config fields
| Channel | Required fields |
|---|---|
| Discord | webhook_url |
| Slack | webhook_url |
| Telegram | bot_token, chat_id |
recipients[] | |
| Webhook | url |
Optional channel settings:
- Discord:
bot_username - Webhook:
method,headers,auth_type,auth_token
Rule model
Each channel can have multiple rules:
event_type:new_error,threshold(error_spikeandstatus_changeexist in the model but do not fire yet)enabled: on/offconditions.levels: allowed levelsconditions.min_count: threshold minimum, default10cooldown_seconds: per channel + error-group cooldown, default900(15 minutes)
Dispatch flow
- Ingest creates/updates error groups.
- Internal dispatch endpoint evaluates enabled rules.
- Matching notifications are sent and logged in
notification_log. - Recent sends/failures appear in Notification History.
Deduplication
- At most one notification per channel per error group per dispatch.
- Cooldowns key off the last successful send for that channel + group; failed sends do not suppress retries.
new_errorrules fire once per group. They fire again only after the group is resolved and then regresses (a resolved group receives a new event).
Test notifications
Use the Test action on a channel. It sends a synthetic error payload through the same channel adapter.