❄️
Data Flakes

Back

Pipeline failures happen. The difference between a minor hiccup and a major incident is Time To Detection (TTD).

Snowflake now provides a robust, native framework for Alerts and Notifications. You don’t need Airflow or external monitoring tools for basic health checks. You can do it all in the database.

The Components#

  1. Notification Integration: The bridge to the outside world (Email, Slack, MS Teams, PagerDuty).
  2. Alert Object: A scheduled check that evaluates a condition.
  3. System stored procedures: SYSTEM$SEND_EMAIL or SYSTEM$SEND_SNOWFLAKE_NOTIFICATION.

Step 1: Create Email Integration#

CREATE OR REPLACE NOTIFICATION INTETRATION email_int
    TYPE = EMAIL
    ENABLED = TRUE
    ALLOWED_RECIPIENTS = ('data-team@company.com');
sql

Step 2: Define the Alert Logic#

Let’s alert if our critical table FACT_SALES hasn’t received data in the last hour.

Step 3: Managing Alerts#

Alerts are objects. You can ALTER ALERT ... RESUME and SUSPEND.

Pro-tip: Create a dashboard in Snowsight that queries INFORMATION_SCHEMA.ALERT_HISTORY to show a log of all triggered alerts.

Advanced: Webhooks to Slack#

For Slack messages, you can use the WEBHOOK integration type (if enabled/available in your region) or use an External Function to call the Slack API. This allows for richer formatting (blocks, buttons) than standard email.

Conclusion#

Observability is key to trust. By baking alerts directly into the Data Cloud, we ensure that the data team detects issues before the business users do.

Disclaimer

The information provided on this website is for general informational purposes only. While we strive to keep the information up to date and correct, there may be instances where information is outdated or links are no longer valid. We make no representations or warranties of any kind, express or implied, about the completeness, accuracy, reliability, suitability, or availability with respect to the website or the information, products, services, or related graphics contained on the website for any purpose. Any reliance you place on such information is therefore strictly at your own risk.