Microsoft BizTalk Monitoring

Microsoft BizTalk - An Overview

Microsoft BizTalk Server provides a powerful Web-based development and execution environment for solving integration problems. BizTalk handles enterprise application integration, business process automation, business-to-business communication, message broker and business activity monitoring. With Applications Manager's BizTalk Monitoring capability, you can monitor the core components and performance counters like messaging engine, orchestration engine, throttling and adapter performance, ensuring the overall health of BizTalk Environment.

Microsoft BizTalk - Adding a new monitor

Microsoft BizTalk Server Versions Supported: BizTalk 2013 or below, Biztalk 2016

Click to know about the user previleges and other necessary prerequisites to monitor Microsoft BizTalk Server.

To create a Microsoft BizTalk Monitor:

  1. Click on New Monitor link.
  2. Select Microsoft BizTalk.
  3. Enter the Display Name of the monitor
  4. Enter the Hostname of the host where the BizTalk Server is running.
  5. You can enter your own credential details or select preconfigured credentials details in Credentials Manager. If you wish to enter your own credentials, specify username and password details for this monitor.
  6. Check Enable PowerShell option to enable data collection through PowerShell. If PowerShell is enabled then Application Name for the related artifacts will be displayed along with other information. For more help on enabling Powershell Remoting, click here. Enter:
    • Database Server Name: If the management database is stored in some other server, provide the name of that database server (optional).
    • Database Name: Provide the management database name.
  7. Set the Poll interval.
  8. If you are adding a new monitor from an Admin Server, select a Managed Server.
  9. Choose the Monitor Group from the combo box with which you want to associate BizTalk server (optional). You can choose multiple groups to associate your monitor.
  10. Click Add Monitor(s). This discovers BizTalk server from the network and starts monitoring them.

Use the AddMonitor API to add a Microsoft BizTalk monitor:

Syntax

http://[HOST]:[PORT]/AppManager/xml/AddMonitor?apikey=[APIKEY]&type=BizTalkServer&displayname=[DISPLAYNAME]&host=[BIZTALKHOST]&Version=[2013/2016]&UserName=[USERNAME]&Password=[PASSWORD]&PowerShell=[TRUE/FALSE]&CredSSP=[YES/FALSE]&DBServer=[DBSERVERHOST]&DBName=[BIZTALKMANAGEMENTDBNAME]

Request Parameters

The parameters involved in the API request are described below. Also, refer the list of common Request Parameters.

FieldDescription        
type The category type of the monitor you want to add. The value should be BizTalkServer.
host The name of the host where where BizTalk is installed.
Version

Version of Biztalk Application

  • 2013 - If Biztalk version is 2013 or below
  • 2016 - If Biztalk version is 2016
UserName The username of the BizTalk server host machine.
Password The password of the BizTalk server host machine.
PowerShell

Is powershell enabled? Values are:

  • True - powershell is enabled
  • False - powershell is disabled
DBServer The name of the server where the configuration database is stored (required only if PowerShell is enabled).
DBName The name of the configuration database (required only if PowerShell is enabled).
CredSSP Specifies if CredSSP Authentication should be used,when Use Powershell option is chosen. The value is yes if credssp needs to be enabled.

Sample Requests

http://app-x5p:9400/AppManager/xml/AddMonitor?apikey=fcc04ce64410e0dd7ccf72371a79761c&type=BizTalkServer&displayname=BizTalk2016&host=apm-biz1-1&Version=2016&UserName=apm\administrator&Password=Pass123&PowerShell=True&CredSSP=False&DBServer=apm-biz1-1&DBName=BizTalkMgmtDb
http://app-x5p:9400/AppManager/xml/AddMonitor?apikey=ddc04ce64410e0dd7ccf72371a79761c&type=BizTalkServer&displayname=BizTalk2016&host=apm-biz16-1&Version=2013&UserName=apm\administrator&Password=Pass123&PowerShell=False&CredSSP=False

Monitored Parameters

Go to the Monitors Category View by clicking the Monitors tab. Click on Microsoft BizTalk under the Middleware/Portal Table. Displayed is the Microsoft BizTalk bulk configuration view distributed into three tabs:

  • Availability tab, gives the Availability history for the past 24 hours or 30 days.
  • Performance tab gives the Health Status and events for the past 24 hours or 30 days.
  • List view enables you to perform bulk admin configuration.

Click on the monitor name to see all the server details listed under the following tabs:

Performance Overview

Parameter

Description

Orchestration Engine Performance Counters (for each HostInstance)
Used Physical Memory The percentage of used physical memory on the machine.
DB TXN/Sec Average number of database transactions performed per second
Orch Dehydrated/Sec The average number of dehydrated orchestrations per second. Dehydration is the process of serializing the state of an orchestration into a SQL Server database. The orchestration engine dehydrates the instance by saving the state, and frees up the memory required by the instance.
Orch Rehydrated/Sec The average number rehydrated per second. Rehydration is the process of deserializing the last running state of an orchestration from the database.The orchestration engine can be triggered to rehydrate an orchestration instance by the receipt of a message or by the expiration of a time-out specified in a Delay shape.
Idle Orchestrations

Number of idle orchestration instances currently hosted by the host instance. This refers to orchestrations that are not making progress but are not dehydratable, such as when the orchestration is blocked waiting for a receive, listen, or delay in an atomic transaction.

MsgBox DB Conn Failures

The number of attempted database connections that failed since the host instance started.

Orch Suspended/Sec

The average number of orchestration instances suspended per second since the host instance started.

Pending Msgs Number of received messages for which receipt has not yet been acknowledged to the message box.
Orch Discarded/Sec The average number of orchestration instances discarded per second from memory since the host instance started. An orchestration can be discarded if the engine fails to persist its state.
Orch Created/Sec The average number of orchestration instances created per second since the host instance started.
Running Orchestrations Number of orchestration instances currently executing.
Host Throttling Performance Counters (for each HostInstance)
Active Instance Count The number of service instances active in memory.
Database Session The number of concurrent MessageBox database connections being used.
Database Size The number of messages in the database queues that this process has published.
Process Memory Usage The process memory consumption in MB. This is the maximum of the process’s working set size and the total space allocated for the page file for the process.
Total Messages Delivered  The number of outbound messages delivered to the Orchestration engine or the End Point Manager (EPM).
Total Messages Published  The number of messages published
Message Delivery Delay(ms) The current delay in ms imposed on each message delivery batch.
Message Publishing Delay(ms) The current delay in ms imposed on each message publishing batch.
Message Delivery Throttling State

Indicates whether the system is throttling message delivery (affecting XLANG message processing and outbound transports).

  • 0: Not throttling
  • 1: Throttling due to imbalanced message delivery rate    (input rate exceeds output rate)
  • 3: Throttling due to high in-process message count
  • 4: Throttling due to process memory pressure
  • 5: Throttling due to system memory pressure
  • 9: Throttling due to high thread count
  • 10: Throttling due to user override on delivery
Message Publishing Throttling State

Indicates whether the system is throttling message publishing (affecting XLANG message processing and inbound transports).

  • 0: Not throttling
  • 2: Throttling due to imbalanced message publishing rate (input rate exceeds output rate)
  • 4: Throttling due to process memory pressure
  • 5: Throttling due to system memory pressure
  • 6: Throttling due to database growth
  • 8: Throttling due to high session count
  • 9: Throttling due to high thread count
  • 11: Throttling due to user override on publishing
High Thread Count

Indicates whether the thread count exceeds the threshold.

  • 0: Normal
  • 1: Thread count exceeds threshold
Host Instances
Host Name The name of the host instance.
Host Type

This metric indicates which runtime model the instances of the BizTalk host will be running in:

  • In-process - In-process hosts represent service instances that an administrator creates, deletes, and fully controls with WMI and the BizTalk Administration console.
  • Isolated - Isolated hosts primarily host adapters that must run outside of the normal BizTalk Server runtime process.
Service State The current service state of the host instance:
  • 1: Stopped
  • 2: Start pending
  • 3: Stop pending
  • 4: Running
  • 5: Continue pending
  • 6: Pause pending
  • 7:Paused
  • 8:Unknown
Status The status of the host instance, enabled or disabled
Receive Locations
Name The name of the Receive Locations.
Inbound Transport URL The primary location to which the receive location is mapped for receiving the message content.
Host Name The name of the receive handler used by the receive location.
Adapter Name The name of the adapter used by the receive location.
Receive Port Name The name of the port used by the receiver location.
Send Ports
Name The name of the send port.
Is Two-Way Gets a value indicating whether the sent port is set up as a request-response port.
Is Dynamic Gets a value indicating whether the send port is dynamic or static.
Application The application that encloses the send port.
Status The status of the send port.
Receive Ports
Name The name of the receive port.
Is Two-Way Gets a value indicating whether the receive port is set up as a request-response port.
Primary Receive Location The primary receive location for receiving the message content.
Application The application that encloses the receive port.

Messaging

ParameterDescription
Message Box 
Spool Size The size of the spool on a particular message box on a particular server.
Tracking Data Size

The size of the tracking data table on a particular message box on a server.

Total Instances The total number of instances of the host.
Message Box Host Queue (For each HostInstance)
Suspended Message Length Total number of messages suspended for the host.
Host Queue Length Total number of messages in the host queue.
Messaging Performance Counters (For each HostInstance)
Pending Receive Batches The number of batches received by the Messaging Engine that have not completed processing. These include batches that have been processed asynchronously by the adapters.
Pending Transmitted Messages The number of messages given by the Messaging Engine to send adapters that have not completed processing. This includes response messages for adapters.
Throttled Receive Batches The number of batches that have been blocked on receive by the Messaging Engine due to high service load. These batches contain new messages to be processed.
Messaging Latency (For each HostInstance)
Inbound Latency The average latency in seconds from when the Messaging Engine receives a document from the adapter until the time it is published to Message Box.
Outbound Latency The messaging Engine receives a document from the Message Box until the time document is sent by the adapter.

Orchestrations

ParameterDescription
Name The name of the orchestration.
Host Name The name of the BizTalk host instance in which the orchestration runs.
Application The name of the application to which the orchestration is associated.
Status

This metric returns the status of a specific orchestration. Possible values are:

  • 1 - Unbound.
  • 2 - Bound.
  • 3 - Stopped.
  • 4 - Started.

File Adapters

ParameterDescription
File Receive Adapter(For each HostInstance)
File - Byte Received/Sec The number of bytes received by the file adapter per second. The counter applies only to messages that have been completely read by the file adapter from the file system.
File - Messages Received/Sec The number of messages received by the file adapter per second. The counter applies only to messages that have been completely read by the file adapter from the file system.
File Send Adapter(For each HostInstance)
File - Bytes Sent/Sec The number of bytes sent by the file adapter per second. The counter applies only to messages that have been completely written to file system.
File - Messages Sent/Sec The number of messages sent by the file adapter per second. The counter applies only to messages that have been completely written to file system.
FTP Receive Adapter (For each HostInstance)
FTP - Bytes Received/Sec The number of bytes received by the FTP adapter per second. The counter applies only to messages that have been completely read by the FTP adapter from the FTP server.
FTP - Messages Received/Sec The number of messages received by the FTP adapter per second. The counter applies only to messages that have been completely read by the FTP adapter from the FTP server.
FTP Send Adapter (For each HostInstance)
FTP - Bytes Sent/Sec The number of bytes sent by the FTP adapter per second. The counter applies only to messages that have been written to the destination FTP server.
FTP - Messages Sent/Sec The number of messages sent by the FTP adapter per second. The counter applies only to messages that have been written to destination FTP server.
SFTP Send Adapter (For each HostInstance)
SFTP Bytes Sent/Sec The number of bytes sent by the SFTP adapter per second. 
SFTP Messages Sent/Sec The number of messages sent by the SFTP  adapter per second.
SFTP Receive Adapter (For each HostInstance)
SFTP Bytes Received/Sec The number of bytes received by the SFTP adapter per second.
SFTP Messages Received/Sec The number of messages received by the SFTP adapter per second.

Email Adapters

ParameterDescription
POP3 Adapter Performance Counters (For each HostInstance)
Active Sessions The number of open POP3 connections the POP3 adapter is managing at a time.
POP3 - Bytes Receive/Sec The number of bytes downloaded by the POP3 adapter from a mail server per second.
POP3 - Messages Received/Sec The number of email messages downloaded by the POP3 adapter from mail server per second.
SMTP Adapter (For each HostInstance)
SMTP - Messages Sent/Sec The number of messages sent by the SMTP adapter per second. The counter applies only to messages that have been transmitted to the SMTP server.

Web Adapters

ParameterDescription
HTTP Receive Adapter (For each HostInstance)
HTTP - Messages Received/Sec The number of HTTP requests received by the HTTP adapter per second. The counter applies only to request messages that have been completely read by the HTTP adapter from the HTTP client.
HTTP Receive Adapter--Memory Queue Size The number of incoming messages in the HTTP adapter's internal memory queue.
HTTP Send Adapter (For each HostInstance)
HTTP - Messages Sent/Sec The number of HTTP requests sent by the HTTP adapter per second. The counter applies only to request messages that have reached the destination URL.
HTTP Send Adapter--Memory Queue Size The number of outgoing messages in the HTTP adapter's internal memory queue.
SOAP Send Adapter (For each HostInstance)
SOAP - Messages Sent/Sec The number of messages sent by the SOAP adapter per second. 
SOAP Receive Adapter (For each HostInstance)
SOAP - Messages Received/Sec The number of messages received by the SOAP adapter per second. 

Microsoft Adapters

ParameterDescription
MSMQ Receive Adapter (For each HostInstance)
MSMQ - Bytes Received/Sec The number of bytes received by the MSMQ  adapter per second. The counter applies only to messages that have been completely read by the MSMQ  adapter from the source queue.
MSMQ - Messages Received/Sec The number of messages received by the MSMQ  adapter per second. The counter applies only to messages that have been completely read by the MSMQ  adapter from the source queue.
MSMQ Send Adapter (For each HostInstance)
MSMQ - Bytes Sent/Sec The number of bytes sent by the MSMQ  adapter per second. The counter applies only to messages that have reached the destination queue.
MSMQ - Messages Sent/Sec The number of messages sent by the MSMQ  adapter per second. The counter applies only to messages that have reached the destination queue.
SQL Send Adapter (For each HostInstance)
SQL Messages Sent The total Messages sent using SQL adapter.
SQL Messages Sent Per Sec The number of messages sent by the SQL adapter per second. The counter applies only to messages that have reached the destination queue.
SQL Receive Adapter (For each HostInstance)
SQL Messages Received The total Messages received using SQL adapter.
SQL Messages Received Per Sec The number of messages received by the SQL  adapter per second. The counter applies only to messages that have been completely read by the SQL  adapter from the source queue.
Windows SharePoint Services Adapter Performance Counters
Percentage Receive Message Failures The percentage of Windows SharePoint Services files that have not been processed by BizTalk Server due to receive errors.
Percentage Send Message Failures The percentage of failed messages BizTalk Server attempted to send to Windows SharePoint Services.

 

Note:

The application name for artifacts (Send Ports, Receive Ports, Orchestrations ) will be displayed only if PowerShell is enabled. For more info on how to enable powershell, click here.

SFTP Adapter metrics is supported only for Biztalk 2016.

Enabling Credential Delegation for Biztalk server

If the Biztalk Management Database is on a different server from that where Applications Manager is running, the credentials of the Biztalk Server should be delegated for data collection to happen (Delegation is disabled by default). Here is how you can enable it:

  • Open the Run command
  • Run gpedit.msc
  • Open the following policy: Computer Configuration -> Administrative Templates -> System -> Credentials Delegation -> Allow Delegating Fresh Credentials
  • Right-Click and choose Edit.
  • Select Enabled.
  • Apply and click OK.

A user must execute commands in Applications Manager server and the Biztalk server for credential delegation.

Now execute the below command as done before in powershell prompt of Applications Manager Server:

New-PSSession -ComputerName 'chluzsap2031.root.local' -Credential Get-Credential -Authentication 'CredSSP'