Elementary has a Slack integration to send alerts about:
- Failures and/or of dbt tests
- Failures and/or Elementary tests
- Model runs failures
- Source freshness issues
You can enrich your alerts by adding properties to tests and models in your
The supported attributes are: owner, subscribers, description, tags.
You can configure and customize your alerts by configuring: custom channel, suppression interval, alert fields (for test alerts only), alert grouping, alert filters.
Setup Slack Integration
First create a Slack app:
Based on the method you selected, create a token or webhook:
Lastly, pass the token / webhook to the CLI as a param or in the
Execute the CLI
Make sure to run the following command after your dbt runs and tests:
edr monitor --slack-token <your_slack_token> --slack-channel-name <slack_channel_to_post_at> --group-by [table | alert]
edr monitor if you used
config.yml. Please note that when you specify the —slack-channel-name, it’s the
default channel name to which all the alerts will be sent that are not attributed to any custom channel. Therefore,
if you execute several
edr monitor commands at the same time with different
slack-channel-name arguments, they can
be sent to the wrong one due to the overlap accessing the backend table of elementary. For avoiding this problem,
the guide can be followed.
Alert on source freshness failures
Not supported in dbt cloud
To alert on source freshness, you will need to run
edr run-operation upload-source-freshness right after each execution of
dbt source freshness.
This operation will upload the results to a table, and the execution of
edr monitor will send the actual alert.
- Note that
dbt source freshnessand
upload-source-freshnessneeds to run from the same machine.
- Note that
In order to monitor continuously, use your orchestrator to execute it regularly (we recommend running it right after your dbt job ends to monitor the latest data updates).