How to create BizTalk360 Alerts during deployment with BTDF
BizTalk360 is becoming increasingly popular as a monitoring and management tool for organizations that use BizTalk. And there’s good news for BizTalk360 users everywhere: You can now extend the BizTalk Deployement Framework (BTDF) to automatically deploy your BizTalk360 alerts!
As you probably know, it is considered a best practice to use the BizTalk Deployment Framework for automatic deployment of your BizTalk solutions. This Framework doesn’t only allow for deployment of BizTalk artifacts, but it also enables you to perform all kind of custom tasks to automate the deployment of your BizTalk application, thereby reducing the risk of error which is introduced when you’re deploying manually. Until recently it wasn’t possible to automate the deployment of BizTalk360 alerts with BTDF, but it is now…
As of BizTalk360 v8, which was released early February 2016, we now have a documented API available, enabling developers to build their own custom solutions by implementing the BizTalk360 API. With this JSON-based API you can operate both BizTalk360 and BizTalk.
The API consists of the following services:
- ActivityMonitoringService – List of Business Activity Monitoring Services
- AdminService – List of API’s related to Admin(Super user) activities in BizTalk360
- AdvancedEventViewerService – List of API’s helps to retrieve details about Advanced Event Viewer
- AlertService – List of API’s used for Monitoring in BizTalk360
- BizTalkApplicationService – List of API’s helps to retrieve information about BizTalk Applications
- BizTalkGroupService – List of API’s helps to get details about the Artifacts in BizTalk Group
- BizTalkQueryService – List of API’s helps to run queries BizTalk
- EDIManagementService – List of API’s helps to run EDI queries and to get details about parties and agreements
- EnvironmentMgmtService – List of API’s related to environment management services in BizTalk360
- ESBManagementService – List of API’s helps to retrieve details about Enterprise Service Bus
Combined, these services contain many operations, which are used by BizTalk360 itself, but can also be used in custom applications. In this blog post I will describe an example of such a custom application, which automatically creates a BizTalk360 Alert during deployment of a BizTalk application.
If you have BizTalk360 v8 Platinum, Partner, Product Specialist or if you have a Trial license and you want to find out more about the BizTalk360 API, just navigate to Settings / API Documentation. As you’ve probably come to expect from a modern API, you can try each operation directly from the API Documentation.
Note: although you will need one of the above licenses to be able to access the API Documentation, you don’t need a specific license to be able to actually use the API itself!
Deployment of BizTalk applications
In my experience, most organizations that use BizTalk Server as their middleware platform, also use BTDF to deploy their BizTalk solutions. The most important reason to use this open source software over the out-of-the-box capabilities that BizTalk Server offers, is that BTDF enables you to minimize the (sometimes large) number of manual steps required to deploy a full integration solution, thereby significantly reducing or even fully eliminating the risk of human error. Think single-click deployments (your admins will love you for this)!
An important component of BTDF is the SettingsFileGenerator.xml file. In this file, which can be edited with Microsoft Excel, you can define all of the specific settings for each environments in a DTAP street. An example of these type of setting are the URLs of Send Ports, that will be different in a Production environment when compared to a test environment for instance.
Besides being able to deploy all kinds of BizTalk artifacts, the open architecture of BTDF enables you to execute SQL scripts, deploy webservices in IIS and much more. (I actually wrote a blogpost a while ago about how PL/SQL scripts can be executed during the deployment of a BizTalk application, which you can find here).
Now that we have a flexible deployment framework with BTDF and a documented BizTalk360 API, it’s only a small step to create a tool that takes advantage of this powerful combination, which will create a BizTalk360 Alert for a BizTalk application during a deployment with BTDF! All this piece of software needs to be capable of doing is reading settings from the BTDF file which contains environment specific settings file and call the BizTalk360 API to create that alert. And the best news is: we’ve already done that for you and we’re offering it for free on CodePlex!
It’s called BT360Deploy, and it works as follows:
BT360Deploy takes 2 arguments, namely:
-a: the name of the BizTalk Application which is deployed
-s: the name and location of the (environment specific) settings file which contains all kind of BizTalk360 parameters
BT360Deploy -a AxonOlympus.BTDF -s C:\Data\Development\BizTalk\AxonOlympus.BTDF\Deployment\EnvironmentSettings\Exported_LocalSettings.xml
Below you see the output of the deployment of a BTDF project, in which BT360Deploy was incorporated, with the parameters as shown above:
To be able to create BizTalk360 Alerts during deployment, you need to know which fields in the BizTalk360 User Interface correspond with which fields in the BTDF Settings file. For that purpose we created a document which describes that mapping. Below you will find a sample with a couple of fields. The full document can be downloaded from CodePlex, as part of the BT360Deploy package.
|Screen/Field in BizTalk360 User Interface||Field in BTDF Settings file|
|Alarm – Basic / Basic Details|
|Disable Alarm for Maintenance||BizTalk360_isAlertDisabled|
|Alarm – Threshold / Threshold Alert|
|Alert on threshold violation||BizTalk360_isAlertASAP|
|If violation persists for||BizTalk360_alertASAPWaitDurationInMinutes|
|Limit number of alerts per violation to||BizTalk360_isContinuousErrorRestricted|
|Notify when things become normal again||BizTalk360_isAlertOnCorrection|
|Set Alerts on set day(s) and time(s) only||BizTalk360_isThresholdRestricted|
Are you interested in creating your BizTalk360 Alerts during deployment, instead of having to create them manually afterwards? Check out the following link on CodePlex to get your hands on it:
Besides some binaries, the download contains the earlier mentioned mapping document and a ‘How to…’ document which describes how you can incorporate BT360Deploy in your BTDF project.