Today we are excited to announce a new feature that will enable you to monitor your Azure resources more effectively and take further actions on them, automatically. You now have webhook support for Azure Alerts on monitoring data (metrics) from your Azure resources.
Webhooks are user defined HTTP endpoints that are usually triggered by an event. Webhooks allow us to get more out of Azure Alerts. You can specify a HTTP or HTTPS endpoint as a webhook while creating or updating an alert on the Azure Portal.
Here is how webhooks will work for Azure Alerts:
- Azure Alert service makes a HTTP POST operation to the endpoint you specify
- It sends alert metadata (as JSON payload) to the endpoint
- The endpoint can then process the data received to take further action on the alert
This empowers you to do more with the alerts, as examples, you can:
- Integrate with popular DevOps notification & incident management systems such as PagerDuty, OpsGenie, VictorOps etc.
- Execute scripts using Azure Automation (Runbooks)
- Trigger Logic Apps
- Build APIs to receive text messages via Twilio or other VOIP services
- Build APIs to receive Slack, HipChat or Campfire notifications
The JSON payload schema and configuration options in webhooks for Azure Alert is explained here on the Azure Documentation site.
Integrate Azure Alerts with PagerDuty & OpsGenie
Take a look at the video that explains more about the webhook and demonstrates how to integrate alert webhooks with PagerDuty
This document explains how to integrate Azure Alerts with OpsGenie.
Execute Azure Automation Scripts
Want to take further action on your Azure resources based on an alert? Look no further, check out the video from Azure Automation team on how to execute Runbooks using webhooks for Azure Alerts
Trigger Logic Apps from Azure Alerts
Here are other webhook integrations you can do for your alert using pre-built Logic Apps from the Azure team:
- Logic App to send SMS via Twilio API. Create a Twilio account first.
- Logic App to send Slack messages. Create a Slack account first
- Logic App to send messages to an Azure Queue.
Do more using the Azure Insights SDK
Now that you have learnt how to do this via the Azure Portal, take a look at how to do this programmatically using the Azure Insights SDK. The advantage of using the SDK is that you can add custom properties to your webhook (key-value pairs) that get passed on with the JSON payload. The SDK also allows you to add multiple webhooks (up to 5) for your Azure Alert. We will support adding multiple webhooks via the Azure Portal in our next refresh.
Here is a C# sample to get you started.
So take this for a spin, fire away Azure Alerts to your favorite webhook and let us know what you think.