Alerts
Send the alert to the person who owns the table.
An alert nobody owns is noise. Tidewater routes each one by owner, severity and time of day, attaches the impact, and keeps everything that can wait for the morning digest.
Routing
Rules that read like a runbook.
Match on the table's owner, the severity and the hour. The first rule that matches decides who is told and how. Rules are listed in order, so anyone can see why an alert went where it did.
- Slack, Microsoft Teams, PagerDuty, Opsgenie, e-mail and signed webhooks
- Owners imported from dbt meta tags or set in the product
- Quiet hours that hold low severity alerts for the digest
5 assets affected, owner finance-data.
Context
The cause and the impact, in the alert.
Each alert names the late table, the upstream step that started late and the assets downstream. The history of the alert is kept, so the next on-call engineer sees what was tried.
- Upstream cause found by walking the lineage graph backwards
- Downstream assets listed with owners and recent views
- Acknowledge and resolve from Slack without opening the product
- 06:00 Deadline passedorders_daily had not reported a finished run.
- 06:38 Alert openedSent to finance-data with 5 affected assets.
- 06:41 AcknowledgedHannah took ownership in Slack.
- 06:57 Cause foundThe upstream orders export started 41 minutes late.
- 07:12 ResolvedRun finished at 07:09. Downstream models refreshed.
Digest
One e-mail instead of eleven pings.
Anything that can wait for morning goes into a single digest per team, sorted by what it affects. High severity alerts still arrive the moment they happen.
- A digest per owning team, at the hour that team chooses
- Duplicate alerts merged, including after an orchestrator restart
- Everything in the digest links back to the alert history
Under the hood
How it works, briefly.
Deduplicated
One incident is one alert, however many checks it fails. Repeated failures update the alert instead of sending another.
Signed webhooks
Every webhook carries an HMAC signature and a timestamp, so your receiver can reject anything that did not come from Tidewater.
Owners, not channels
People and teams own tables. If a team renames its channel or an engineer leaves, change the owner once and the rules follow.
Related documentation
See your own pipelines in Tidewater
Book a 30 minute walkthrough. We connect a sample of your setup and show you what it would have caught last month.