BizTalk360 Custom Notification Channels
Introduction
One of the great new features of the BizTalk360 8.0 release is the possibility to add custom notification channels. This way we can send notifications to any target, like a ticketing system, or a central dashboard like Nagios. Setting up these notification channels is easy too, we just have to implement BizTalk360's IChannelNotification interface. To see how to implement our own notification channel, please check this MSDN Code sample.
Description
Settings UI
Settings can be set on two places. The first is the global settings of the notification channel, settings specified here will be used by all alarms using the notification channel. The second is the alarm settings, these will be used only by the specific alarm, and can be different on each alarm where the notification channel is used. For this we have to create two xml files, GlobalProperties.xml and AlarmProperties.xml.
Process Alert
Next we will have to create the class where we implement our notification channel, which will implement the IChannelNotification interface, which can be found in B360.Notifier.Common. In case we use any custom DLL's, we also have to put these in the GAC, or our notification channel will not work. In this class we will add the SendNotification method, which receives the alarm and environment properties from BizTalk360.
Installation
Once we have created our custom notification channel we can install it into BizTalk360. Open the settings in BizTalk360 go to Monitoring and Notification and choose Manage Notification Channels. Create a new notification and set the name, optionally add a Logo, and choose the DLL of the solution we just created.
Click Validate and Render UI to check if the UI is as expected, and save it if everything is correct. We now have to set our global properties, which will be used throughout all instances of this notification channel.
Now that our channel has been created, we can add it to our alarms. Either create a new alarm, or edit an existing alarm, and go to the Advanced tab. Here we will find all enabled notification channels. Enable the channel which we just created, and set the topic to which our messages should be sent.
Now whenever BizTalk360 sends out a notification, it will also be sent to our topic, which we can use to feed into other applications. Of course you can also use this to send them to other targets, which can be implemented with just a few lines of code.
Conclusion
BizTalk360 is a great tool for monitoring and administrating BizTalk, but sometimes there is a need from operations for a single view for all applications in the company, which we now can easily integrate with.
Source Code
MSDN Code Sample:
See Also
Another important place to find an extensive amount of BizTalk related articles is the TechNet Wiki itself. The best entry point is BizTalk Server Resources on the TechNet Wiki.