BAM and HAT Integration Portal

Microsoft BizTalk Server is used to integrate enterprise applications and systems within an organization and across businesses, automate business processes and create business process management solutions. These processes may be short lived e.g. for seconds, minutes or long running for days, weeks or even months. An integration solution may span across multiple systems and be mission critical, therefore it is very important for organizations to have appropriate monitoring solutions in place to be able to capture the status of various processes in real-time.

BizTalk Server provides following out-of-box monitoring tools that are normally used by developers and administrators.

  • Health and Activity Tracking (HAT) : Health and Activity Tracking (HAT) is a web-based user interface that you can access over HTTP to see tracking data through different views and queries, depending on your role. You can monitor the progress of your business process, you can examine state as your business process runs, and you can create custom views to get just the information that is important to you.
  • Business Activity Monitoring (BAM) Portal: The BAM portal in BizTalk Server provides real-time, end-to-end visibility into a business process. It is a Web-based feature that consists of a collection of ASP.NET 2.0 pages. You can customize BAM to enhance the performance and experience for your users.
  • BizTalk Server Administration Console: The BizTalk Server Administration Console is a Microsoft Management Console (MMC) that you can use to manage and monitor BizTalk Server, and that you can use to deploy and manage your BizTalk Server applications.

Although these tools address most of the needs for monitoring and managing BizTalk solutions, below are some requirements that are not met in effective manner, especially for complex solutions:

  • Ability to search for BizTalk orchestration and messaging instances based on process identifiers. In some situations, it is required to locate the corresponding BizTalk instances (one or more) for a particular process based on process identifiers e.g. order number, order dates etc. It can get very difficult to locate the instances based on such properties when a large number of messages flow through the system.
  • Ability to resume business processes from latest possible checkpoint in the process flow, in case the orchestration is suspended in non-resumable state for any reason. This eliminates the need to restart the process from the initial state, which may have required rework if the process includes manual steps.

To fulfill the above requirements, BAM and HAT integration is one of optimal solutions. Although some integration between BAM and HAT already exists, it is very primitive and is good only for very basic needs. The integration feature is limited to availability of ‘Assistance’ button on activity status page in BAM portal. The assistance request is placed in the Application Event log. You can then use Health and Activity Tracking (HAT) to retrieve the assistance request.

To achieve better integration between BAM and HAT, another possible solution is to develop custom BAM portal, which integrates very well with health and activity tracking. You may utilize class members in Microsoft.BizTalk.Operations namespace and BAM API to query the data from BizTalk databases and present the same on a unified interface, as per your needs. Here are related links for the same:

BAM and HAT Integration

https://msdn.microsoft.com/en-us/library/aa578154.aspx

Microsoft.BizTalk.Operations Namespace

https://msdn.microsoft.com/en-us/library/microsoft.biztalk.operations.aspx

BAM Portal

https://msdn.microsoft.com/en-us/library/aa560294.aspx

Business Activity Monitoring in Depth for Developers

https://msdn.microsoft.com/en-us/library/dd320628.aspx

Using Health and Activity Tracking

https://msdn.microsoft.com/en-us/library/ms943797.aspx

Please do leave comments, if any questions or issues or suggestions. Thanks!