Monitoring and Notifications is one of the core features of the BizTalk360. In BizTalk360 version 8.0, we introduced Notification Channels that allows customers to export notifications to other channels like Slack and ServiceNow. This article gives you more information about our notification channel SDK that we shipped with BizTalk360 version 8.0. With version 8.3, we are introducing “Webhook Notification Channel” that allows customers to post message to any REST API.
In this blog, we will show how to export the notification from BizTalk360 to Azure Logic Apps using the HTTP connectors that Logic Apps offers.
Use case Scenario
Let’s assume customers want to integrate an On Premise BizTalk environment with their Cloud Infrastructure so that they can make the cloud environment aware of the health of the BizTalk environment. Once the notifications are triggered, customers can perform operations like emailing stake holders or triggering some other applications depending on the need.
Azure Logic Apps is a perfect candidate for this scenario. Logic Apps has a trigger that can have a HTTP connector to receive the messages from BizTalk360. Once the message is received in the Logic App, we can design the Logic App to send the message as an email.
Creating a Logic App
In Azure Portal, create a new Logic App with HTTP Request-Response template. Add a new step in the Logic App to send an email once the response is done using the Office 365 Outlook – Send an email action. Once the Logic App is configured, it should look as shown below.
As we can see in the above diagram, the Logic App has a HTTP Request Trigger and returns the response. Once the response is sent, the Logic App sends an email to the configured email ids as the final step.
Save the Logic App to get the REST URL which needs to configured in the Webhook notification channel.
Configuring Webhook Notification Channel
Once the Logic App is created and deployed in the Azure portal, you can go to BizTalk360 and configure the Logic Apps URL in the Webhook Notification Channel. You can find the Webhook Notification Channel under Settings> Monitoring And Notification> Manage Notification Channels. Select B360.Notifier.Webhook. click “Configure” to open the configuration panel and enter the API URL obtained from the Logic Apps.
- Key – API key that needs to be added in the Authorization header
- Proxy Settings – Proxy server details if the BizTalk360 environment is behind a proxy
- Request Methods – POST/PUT based on the API
- Request Content Type – XML/JSON based on the API
- Default Headers – Any additional headers that needs to added in the HTTP request header
Click Configure to complete the process. Now we are ready to map the Webhook Channel to any Alarm in BizTalk360.
Map Alarms to the Webhook Notification Channel
In the Alarm configuration page, under Alarm – Advanced section, you will see the list of Notification Channels. Enable the Webhook Notification Channel, enter the Short Description, Impact and Urgency. Click Configure to save the settings.
Now the Notification Channel is mapped with an Alarm in BizTalk360. The notifications emitted from the Alarm will now be sent to the configured email as shown below. To know more about mapping notification channel with alarm, you can read this article on our Support portal.
Currently each environment can point to only one REST API. In the future releases, we will support multiple REST URL’s for the same environment.
Webhook Notification channel can work with any REST API’s with basic authentication. This will be an useful addition to customers and will improve the integration between On Premise and cloud environments.