What is BizTalk Application Monitoring?
When you have set of application running in your BizTalk environment, you will be interested to keep an eye of the health of the application(s). The health of applications is directly connected to various artifacts that’s running inside the application like
- Receive Locations health
- Send Ports health
- Orchestrations health
in addition you’ll also be interested to keep an eye on following items
- Host Instances health related to applications
- Number of suspended instances count for applications
BizTalk360 Simple Application Monitoring
In lot of scenarios your BizTalk application monitoring requirement will be very simple and straight forward. You basically wanted the following condition for your application.
- All Receive Locations enabled
- All Send ports started
- All Orchestrations started
- All Host instances related to the application started
- You wanted to set a threshold for number of suspended instances
In this case you can use simple application monitoring. As shown in the picture below, you pick up the applications that meet the above condition, set suspended instances threshold and click "Save".
The only flexibility you have here is, If you want you can ignore certain artifacts from monitoring using the UI.
Just couple of clicks and your Application monitoring is set and you’ll receive emails like this with a summary view at the top and detail view for applications with issues at the bottom. It will also put a warning showing if artifacts are ignored for monitoring. (Note: Screen shots are not related)
BizTalk360 Advanced Application Monitoring
In some scenarios you may wanted better control on the state of the artifacts rather than simply verifying whether they are healthy and ignoring few of them. Example scenarios include
- You may want certain receive locations to be in stopped state. May be you only enable it once in a while manually. You do not want someone accidentally turning it on.
- You may want to keep certain host instances in disabled state. You wanted to enable it only during testing or some performance conditions.
- You may wanted to monitor various instances states, not just suspended (ex: Active, Ready to Run, etc). You may wanted to set a warning level and error level for number of instances at each state
- You may wanted to setup process monitoring, to see whether you received messages from trading partners
For scenarios like these where you need better control on the artifact state and service instances you’ll use advanced application monitoring. Let’s take a look at Orchestrations example
as you can see from the above picture there are various buttons like "Must be Stopped", "Must be Unbound" or "Just Ignore" etc giving better control for orchestration monitoring, and you can also notice it’s showing the "Current State" and "Expected State" if they do not match then it’s treated as violation and you’ll get notified.
You can do similar stuff for Receive Locations and Send ports and will have better control on Service Instances
Which one to use?
We recommend using the Advanced Application monitoring, both of them are easy to setup and it only take few additional clicks. Advanced monitoring gives you better control, and more importantly only advanced configuration will show up in the overall monitoring dashboard. The simple configuration is what we implemented during our initial days of BizTalk360, we kept it both as backward compatible and it’s useful for certain customers. More importantly there is no connection between them, you should only use one or the other for your application.