DATA OPS

Detect Snowflake Column Changes and Alert dbt Model Owners in Slack

Hourly snapshots each watched Snowflake source table's INFORMATION_SCHEMA, diffs it against the last snapshot, and posts a Slack alert to the owning team when columns are added.

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerHourly schedule starts drift sweep
  • ActionQuery Snowflake INFORMATION_SCHEMA for watched tablesSnowflakeSnowflake
  • ActionDiff against prior snapshot in Postgres and update itPostgreSQLPostgres
  • LogicSkip if no column changes detected
  • OutputPost column-level diff to owning team's Slack channelSlack

What it does

Snapshots the column inventory of your upstream Snowflake source tables and compares each run to the previous one. When a column is added, dropped, renamed, or changes data type, it notifies the dbt model owner who depends on that table so they can react before a downstream build breaks.

When to use it

Use it when raw source tables are owned by upstream teams who ship changes without warning, and your dbt staging models silently break or drift. It turns surprise schema changes into a proactive heads-up the same hour they land.

How it works

  1. 1A schedule fires hourly to begin a drift sweep.
  2. 2Snowflake is queried against INFORMATION_SCHEMA.COLUMNS for every watched source table, capturing column name, type, and nullability.
  3. 3The current snapshot is diffed against the prior snapshot stored in Postgres; the prior state is then overwritten.
  4. 4A logic step filters out runs with no changes so quiet hours stay silent.
  5. 5For each changed table, the owner is resolved from an ownership map and a Slack message is posted to their channel listing exact column-level diffs and the affected dbt models.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect SnowflakeWarehouses, queries, shares.
  2. 2
    Connect PostgresAny Postgres URL — query, write, migrate.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.