
Overview of steps
- Set up webhooks for Slack
- Update Mage project settings
Set up webhooks for Slack
Follow these instructions on Slack to setup incoming webhooks for your workspace.Update Mage project settings
Once you’ve set up webhooks for Slack, you should have a webhook URL that Slack provides. Here is an example webhook (yours may vary):- Open the Mage tool in your browser (e.g. http://localhost:6789/).
- Open a pipeline and start editing it (e.g. http://localhost:6789/pipelines/example_pipeline/edit).
-
In your left sidebar in the file browser, scroll all the way down and click
on a file named
metadata.yaml. -
In the
metadata.yamlfile, add a section with the following configuration or update the existingnotification_configsection:If you omit thealert_onsection it will default totrigger_failureandtrigger_passed_sla. Options:trigger_failure: alert when a run of a trigger failstrigger_success: alert when a run of a trigger succeedstrigger_passed_sla: alert when a SLA is missed.- In this context, SLA (Service Level Agreement) is an expected amount of time for the pipeline to complete.
- If the pipeline runs longer than the SLA, an alert will be sent.
-
In the
metadata.yamlfile, add the following values:Change thewebhook_urlvalue to be the webhook URL you created from Slack.
Customize message templates
You can customize message templates innotification_config. Here is an example config:
success, failure, passed_sla scenarios. For each message template,
you can specify either summary or details.
- If you specify the
summary, the slack message will be yoursummary+ the url of the pipeline run page - If you specify the
details, thedetailswill be used as your slack message directly
{variable_name} syntax.
Hare are the supported variables: error, execution_time, pipeline_run_url, pipeline_schedule_id,
pipeline_schedule_name, pipeline_uuid.
For pipeline_run_url, the default host is http://localhost:6789. You can specify MAGE_PUBLIC_HOST to be
the host url you want to use in the notification messages.
What next?
Whenever a pipeline run is successfully completed or fails, a Slack message will appear in the channel you configured the webhook URL for. Here is an example of what that message could look like: