Service Bus Monitoring with Serverless360 | Serverless360
← Return To Home

Service Bus Performance, Reliability & Availability

Introduction

The smooth functioning of a business application relies on its performance, reliability, and availability. It is very important to analyze these key factors of your application because when it doesn’t perform in an optimum manner, it directly impacts the business. Monitoring an application can be one of the best ways to enhance the business flow and to reduce the malfunctioning in it.

Why Monitoring?

  • The Azure Service Bus customers make use of the Queues and Topics for sending and receiving messages from one service or application to another and they are used for messaging in large-scale applications.
  • Any problem in receiving or sending messages in development is not a big deal, but any inconvenience with transferring messages after deployment will be a real problem.

In this case, monitoring is necessary to ensure good performance, reliability & availability of the application.

Challenges in Azure Monitor

Though the Azure Service bus is powerful, there are some challenges in monitoring them through the Azure portal. Here are some business challenges that most Azure users face while monitoring using the Azure Monitor.

  • The Azure monitor will support monitoring a Service Bus entity, but the entire Serverless application cannot be monitored.
  • In Azure monitor, we end up with several monitoring reports whereas Serverless360 provides a consolidated report on the application associated with the monitor, with a comprehensive view of the status of all the entities.
  • Metrics and Alerts on Azure Monitor are charged per alert basis but in Serverless360 the number of Monitors will not affect the pricing.
  • It is necessary that the user actions on the Azure applications are audited but Azure monitor doesn’t support that whereas Serverless360 tracks every user action on the Azure entities associated with it.

Serverless360 is one platform that provides a solution for all the challenges encountered in Azure monitor.

Service Bus monitoring

The requirement is an Application level, consolidated monitoring in various perspectives that are offered by the Azure portal is entity-level monitoring on its metrics. To monitor Azure Service Bus from multiple perspectives, Serverless360 has three types of monitors: Status monitor, Threshold monitor, and Data monitor.

State monitoring

Choose Serverless360 status monitor to get application health reports at a specified time in a day representing the state of Service Bus Queues, Topics, and Topic subscriptions against the desired values of on state and basic properties.

Service Bus monitoring

Monitor queue based on their properties

It is possible to monitor the Queue based on the following set of properties

  • Transfer Dead Letter Message Count
  • Size in Bytes
  • Message Count
  • Scheduled Message Count
  • Active Message Count
  • Dead Letter Message Count
  • Transfer Message Count

The service bus queue can be monitored on multiple properties mentioned above with appropriate warning and threshold values.

Monitor Topic and its Subscriptions on their Properties

Monitoring on properties of Topic subscriptions is a distinct capability offered only by Serverless360.

Topic subscriptions can be monitored on their properties below

  • Scheduled Message Count
  • Active Message Count
  • Dead Letter Message Count
  • Transfer Message Count
  • Transfer Dead Letter Message Count

Threshold monitoring

Monitor your Service Queues, Topics, and Topic subscriptions when their state or properties violate desired values. Autocorrect their state to restore the business without any manual intervention. Detect violations in important properties like Dead Letter Message Count, Size, and much more.

Threshold monitoring

Data Monitoring

When there is a need to monitor the performance, Incoming and outgoing requests, and connection state, the better solution would be a data monitor. With the extensive set of metrics, it is possible to monitor the above needs and even more.

Data Monitoring

The table below lists the combination of metrics to monitor the Service Bus queue in various perspectives using Serverless360 Data Monitor.

Monitoring purposes

Metrics to Choose

Check if the Service Bus Queue is available. Please refer to this article on ‘Monitoring Azure Service Bus Queue Availability

Server Errors (Count), User Errors (Count), Size (Bytes)

Monitor Incoming Requests over a time duration

Incoming Requests (Count)

Monitor Incoming and Outgoing Messages over a time duration hence check if Upstream and downstream applications are active

Incoming Messages (Count), Outgoing Messages (Count)

Check if applications interacting with the Service Bus Queue are generating any exceptions

User Errors (Count)

Monitor Throttled Requests over a time duration

Throttled Requests (Count)

Check if the expected number of messages is being processed by the interacting applications. Check message count by type

Count of messages (Count), Count of active messages (Count), Count of dead-lettered messages (Count), Count of scheduled messages (Count)

Detect anomaly in an abnormal increase in Queue size

Size (Bytes)

Bulk Monitoring for Topic Subscriptions

Considering Service Bus Topics with a good number of Subscriptions where configuring monitoring on their properties for every Topic Subscriptions would be a tedious process.

Serverless360 has got a monitoring configuration for Service Bus Topic Subscriptions.

This is how the applications involving Service Bus can be easily monitored using Serverless360 and monitoring helps to quickly identify the issues which reduce downtimes of the application.

Conclusion

Serverless360 provides a wide range of monitoring techniques for applications involving Service Bus when compared to other Azure monitoring tools. By choosing appropriate monitors, it is possible to keep track of the performance, reliability & availability of the applications in an efficient way.

Author: serverless360

Serverless360 is a comprehensive tool to operate, manage and monitor Azure Serverless Services related to Enterprise Integration. The blogs published under Serverless360 account is a collective effort by the team members.