RabbitMQ
  • 25 Jan 2024
  • 4 Minutes to read
  • Dark
    Light
  • PDF

RabbitMQ

  • Dark
    Light
  • PDF

Article Summary

RabbitMQ is a widely used message broker that supports the Advanced Message Queuing Protocol, facilitating communication among various system and applications. Integrating RabbitMQ with BizTalk enables user to leverage the queuing features for building robust and fault-tolerant integration solution.

Monitoring RabbitMQ queues is crucial for real-time issue identification, including high queue lengths, message delivery failures, or slow consumer processing. Detecting these issues early allows administrators to proactively address them, preventing any adverse impact on business operations.

This article will explain how to set up RabbitMQ in BizTalk360 and get notified through an advanced monitoring system. This method involves two step process

1.     Configure RabbitMQ Host

2.     Map Queues for Monitoring 

Configure RabbitMQ Host

To establish a connection with the RabbitMQ server, the system needs certain information. By following these steps, you can ensure that BizTalk360 has the necessary details to establish a connection with the RabbitMQ host.

  1. Navigate to BizTalk360 Environment settings → Monitoring → Mapping Configurations.

  2. Click on "RabbitMQ" and then select "Add Host."

  3. Update the General Information:

    • Host Friendly Name: Provide a friendly name for the host.

    • Host Name: Enter the server name where RabbitMQ is hosted.

    • Port: Specify the port configured for the host , the default value is 15672.

    • Delete Orphaned Queue: Enabling this option allows the system to automatically remove orphaned queues mapping.

  4. Authentication: Provide the username and password credentials for the host.

  5. Proxy Settings: If your organization uses a proxy, enter the required proxy settings for accessing the host.

    Proxy settings can be predefined in the Gateway Settings page under BizTalk360 Settings. If already defined there, you can simply toggle the "Use Gateway Proxy" button to utilize the configured proxy settings. If not configured globally, provide the following details:

    • Server Name: The name of your proxy server.

    • Port Number: The port number used to connect through your proxy.

    • Proxy Username: The username for connecting to the proxy server.

    • Proxy Password: The password used to authenticate the credentials for connecting to the proxy server.

  6. Validate and Save - This ensures that the configuration is saved only if the connection was successful.

Map Queue for Monitoring

Once the system establishes a successful connection with the configured RabbitMQ hosts, it can retrieve information on all available queues associated with these hosts and display them in the RabbitMQ Monitoring section.

  1. To access the queue information, navigate to Monitoring → Manage Mapping Queues → RabbitMQ

  2. Select the desired host from the dropdown menu

  3. Based on the selection , users can see all available queues under the host along with its name virtual host name , Type ,Consumers , State, Total Messages in the Queue

  4. Monitor Queue State-

    • Users can select a specific queue and set the expected state as either Running, Idle, or Paused. The monitoring status is then determined based on a comparison between the current and expected states. The monitoring system will then notify users if there is any violations in the Queue states.

    • Auto Healing option can enabled for State-based monitoring, allowing the system to automatically restore the queue to its expected state in case of any violations.

  5. Threshold Monitoring-

    • The Rule Monitoring helps to identify threshold violation of Queue metrics. User can do advanced monitoring by configuring the monitoring rule for below queue metrics and get notified if there is any threshold rule violation.

·       Memory

·       Total Messages

·       Message Ready for Delivery

·       Message Unacknowledged

·       Message Unacknowledged rate

·       Message Persistent

·       Message Byte Persistent

·       Message Byte RAM

·       Consumer

Lets take a scenarios of tracking invoice process. The invoice processing queue is responsible for delivering invoice messages to consumer applications, with the vendor application confirming the receipt of the invoice acknowledgment. Two conditions govern the monitoring and notification system in this case:

  1. Unacknowledged Messages Rate: If the rate of unacknowledged messages is 50% or higher, the BizTalk360 monitoring service triggers a warning alert.

  2. Consumer Application Processing's: Invoice queue must process the message to three consumers(applications); if monitoring conditions fail, the monitoring services push the critical notifications.



Access Policy

Only Super User can configure the RabbitMQ host in BizTalk360 . To monitor the queue from BizTlka60 User must have access to Monitoring section.

Points To Remember

If any queue is removed from RabbitMQ management , then respective monitoring configuration will also removed automatically from BizTalk360.

If you try to connect RabbitMQ which has been hosted in remote ,then provide the configured name (Guest user will not be supported in this case)


Was this article helpful?

What's Next
ESC

Eddy, a super-smart generative AI, opening up ways to have tailored queries and responses