Alert on-call the moment a Fivetran pipeline breaks

Every 30 minutes we check your Fivetran data pipelines and, the moment one breaks, open a PagerDuty incident and post a Slack heads-up for your on-call team.

Agentic Task
FivetranPagerDutySlackEngineeringOperationsNotifications & AlertsResearch & Monitoring
PromptCreate

Every 30 minutes, check my Fivetran data connections for broken syncs and open an incident when one has failed. Run this on a schedule (cron) rather than waiting for a webhook, since a periodic status check is the reliable way to catch pipeline failures here.

Start by calling Fivetran's List Connections to get every connection in the account. For each connection, call Get Connection State to read its current sync state. Treat a connection as broken when its last sync has failed or errored. Skip connections that are syncing healthily, and skip ones that are paused on purpose, since a paused connection is an intentional state and not a failure. I do not want to be alerted about pipelines I deliberately turned off.

For each broken connection, judge how severe the outage is (for example, a core reporting pipeline that many people depend on is more urgent than a minor one), then draft a clear, human-readable incident summary. Name the connection, the source it pulls data from and the destination it writes to, and the most likely cause of the failure based on its state (such as expired source credentials, a permissions problem, or a destination that is unreachable). Keep the summary plain enough that whoever is on call can understand it at a glance.

Open a PagerDuty incident with Create Incident on my incident-response service, using the drafted summary for the incident title and details and setting an urgency that matches the severity you judged. Put the connection's name and id in the incident title so the same connection is easy to recognize later. Then post a short heads-up in Slack with Send a Message to my on-call channel, naming the connection and noting that an incident has been opened, so the team knows a pipeline is down.

Only raise one incident per failing connection per outage. Before opening a new PagerDuty incident, check the currently open incidents and make sure there is not already an open one for that same connection, keying the match on the connection's id and its current failure. If an incident for a connection is already open, leave it alone instead of opening a duplicate every 30 minutes, so a lingering outage does not spam on-call. Once a connection is syncing healthily again, it becomes eligible to alert again on a future failure.

Example output

PagerDuty incident: "Fivetran pipeline down: Salesforce to Snowflake" The Salesforce to Snowflake pipeline has stopped syncing and its last run failed. The most likely cause is expired Salesforce credentials, since the connection reported an authentication error. Data in Snowflake will keep going stale until this is fixed. Severity: high, this is a core reporting pipeline. Slack heads-up in #data-oncall: "Heads up: the Salesforce to Snowflake data pipeline just broke (looks like an auth error on the Salesforce side). I have opened a PagerDuty incident with the full details."

Additional information

What does this prompt do?
  • Checks all of your Fivetran data pipelines every 30 minutes and flags any that have failed or errored.
  • Skips pipelines that are healthy or paused on purpose, so you only hear about genuine problems.
  • Writes a clear, plain-English incident summary naming the pipeline, where its data comes from and goes to, and the likely cause.
  • Opens a PagerDuty incident and drops a heads-up in Slack, and raises just one incident per broken pipeline so on-call is never spammed.
What do I need to use this?
  • A Fivetran account with the data pipelines you want to monitor.
  • A PagerDuty account and the service you want incidents raised on.
  • A Slack workspace and the channel where your on-call team should get a heads-up.
How can I customize it?
  • Change how often the check runs (every 30 minutes by default).
  • Pick which Slack channel gets the heads-up and which PagerDuty service the incident lands on.
  • Adjust how severity is judged, or exclude specific pipelines you would rather not be alerted about.

Frequently asked questions

How quickly will I know when a pipeline breaks?
The check runs every 30 minutes, so you will usually hear within half an hour of a pipeline failing. You can set it to run more or less often.
Will it keep alerting my on-call team if a pipeline stays broken for hours?
No. It raises just one incident per broken pipeline and will not re-alert for the same outage every time it checks, so a lingering problem does not spam on-call.
Does it alert on pipelines I have paused on purpose?
No. Pipelines that are paused intentionally or running healthy are skipped, so you only get pinged about real failures.
What does the alert actually tell me?
It names the broken pipeline, where its data comes from and goes to, and the likely cause, so your team can start fixing it right away.
Do I need both PagerDuty and Slack?
The workflow opens a PagerDuty incident and posts a Slack heads-up. You can drop either one if your team only uses the other.

Stop finding out about broken data pipelines too late.

Let this workflow watch your Fivetran pipelines around the clock and alert your on-call team the moment one breaks.