Using integration software like Microsoft BizTalk Server 2020 is a great way to run business transactions in a smooth and less time-consuming way. However, such environments often comprise many different components, and to keep business transactions running smoothly all the underlying components must be healthy.
That means that the team responsible for the BizTalk Server environment needs to have a good understanding of the different concepts of BizTalk Server and the deployed integrations. An average BizTalk environment can easily contain tens, if not hundreds, of different components, all of different importance.
It is easy to comprehend that monitoring such a vast environment is an important but huge task. To help you focus on what is relevant, in this blog, we provide you with several best practices for monitoring BizTalk environments.
1. Make Monitoring BizTalk Server a priority
Often BizTalk Server is that zooming black box in the corner of the room that no one dares to touch. BizTalk Server is not ‘just another’ software product; you need to know its concepts to understand how the product must be monitored and administered. Although Microsoft BizTalk Server is a very solid product, it is important to keep a good eye on it. You should frequently check the BizTalk Server platform and applications to maintain a healthy environment.
When you use a monitoring solution, you should regularly revisit the configuration and check if it is still in line with the configuration of the BizTalk platform and deployed integrations. This way you prevent newly added BizTalk servers or applications from going unmonitored.
2. Manual BizTalk monitoring: Make proper arrangements about who does what
In the case of manually monitoring the BizTalk environment without using monitoring products, it is important to make proper arrangements about who/what team is responsible for monitoring what part of the environment. Think of areas like the actual servers including the Windows Operating System, the SQL Server platform, the BizTalk Server platform, and last but not least, the BizTalk integrations and endpoints.
Such agreements should contain topics like:
- What is the exact monitoring that is performed, and what is the expected result
- Who/what team needs to be notified in case of unexpected situations
- How is monitoring handled during (public) holidays, leave, etc
3. Introduce a software product for automated BizTalk monitoring
Manual monitoring might be possible with a small footprint in BizTalk Server. But with a growing footprint, the time spent on monitoring increases fast, and it may be better to use software for performing the required monitoring. Once set up, introducing a monitoring solution saves you time and enables you to work on other tasks while still being on top of the health of your BizTalk Server environment.
Many organisations already have products for monitoring their IT landscape. Think of for example Microsoft System Center Operations Manager (SCOM), Dynatrace, Site 24×7, Zabbix, etc. Such solutions enable you to monitor some relevant components in your BizTalk Server environment. However, in most cases, such products lack specific and consolidated BizTalk Server monitoring capabilities like BizTalk Host Instances, BizTalk Port and Orchestration monitoring, etc.
Besides the mentioned general monitoring products, you could also think of acquiring a BizTalk monitoring tool that is specifically designed for monitoring and administering BizTalk Server environments. BizTalk360 is such a product. It does not just monitor the relevant components including missing capabilities as mentioned above like BizTalk Host Instances, but it also has automated recovery options. These are, without customization, unavailable in those general monitoring solutions. The advantages of automated recovery options include:
- No need to manually fix unexpected situations
- An increase in the availability of the BizTalk Server environment
- Automated cleaning up of the environment
4. Separate platform monitoring from application/integration monitoring
At a high level, it is recommended to look at a BizTalk Server environment by segregating the BizTalk Server platform from the applications/integrations deployed on top of the platform. As each integration relies on the BizTalk platform, it is crucial that the platform itself is healthy.
When using automated monitoring, you can create different alarms for monitoring different components. It is beneficial to create separate alarms for monitoring the platform and those integrations/applications. That enables you to:
- Notify different resolution groups via the most suitable channels
- Set different monitoring intervals/priorities
For example, if you set up a platform alarm, you want to be notified as soon as possible when a crucial component is not working as expected. That means that for a platform alarm you configure shorter monitoring intervals. However, if you monitor an integration of lesser importance, the monitoring intervals are probably higher.
5. Monitor more than just the state of the relevant components
Whether you are monitoring manually or with a monitoring tool, do not stick with monitoring the state of relevant components alone. Of course, it is very important to check if components like BizTalk Host Instances, SQL Server jobs, BizTalk Ports, etc. are healthy, but monitoring your BizTalk environment does not end there. Other topics that need to be monitored frequently include:
- Endpoint monitoring like file shares, FTP sites, and queues – be aware if messages are correctly delivered/picked up
- Windows Event Logs – Be aware of errors, reboots, certificate expirations, etc.
6. Keep an eye on your service instances
In Microsoft BizTalk Server, each service instance represents a business transaction. Service instances can have states like running, suspended, dehydrated, etc. Of course, you want your business transactions to be handled successfully. However, it is always possible that something unexpected happens that blocks your transaction(s) from being processed successfully.
Reasons can be of technical or functional nature. For example, endpoints can (temporarily) be unavailable, or wrong data has been provided to the in-process messages, leading the service instance to be suspended. Accumulating suspended service instances doesn’t just lead to interrupted business transactions but could also lead to overall performance degradation of the BizTalk Server environment.
To prevent this from happening, you want to keep a close eye on the correct processing of your service instances. In BizTalk Server, you need to access the Group Hub in the Microsoft BizTalk Server Administration Console. From there, you can query the MessageBox to check the well-being of your service instances. Depending on the monitoring solution you use, you might be able to monitor the number of service instances and their states and be notified when configured thresholds are met.
7. Frequently revisit BizTalk Tracking settings
For analysis and troubleshooting purposes, BizTalk Server comes with configurable tracking settings. Those settings can be configured on BizTalk artifacts like the BizTalk Receive Ports, Orchestrations, and Send Ports.
To prevent performance issues, it is a best practice to limit the number of artifacts for which tracking has been turned on. However, with the BizTalk Server Administration Console, it is impossible to get one complete overview of all the tracking settings. This makes it easy to forget to turn off tracking, once turned on. That is why you should regularly check your ports and orchestrations to understand if any unneeded tracking is turned on.
In this article, we looked at why monitoring your BizTalk environment is important and gave you several best practices for manual or automated monitoring of the environment. Regarding automated monitoring, we gave several general-purpose monitoring solutions and mentioned the BizTalk monitoring tool BizTalk360, which has been designed specifically with the BizTalk Administrator in mind.
We have used this product at Ballard Chalmers with some of our BizTalk clients. The product doesn’t just monitor all the relevant components but also enables you to give people access to its web interface. This way, people can access the BizTalk environment in a safe and, when required, read-only way.
If you need help with your BizTalk Server monitoring, implementation or upgrade, don’t hesitate to get in touch.