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 Azure Service Bus 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 a single Monitor settings.
.
State reporting
With Serverless360 status report 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.
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
Performance Monitor
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.
When there is a need to monitor the performance, Incoming and outgoing requests, and connection state performance monitor With the extensive set of metrics, it is possible to monitor the above needs and much more.
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.
Strengthen your Azure Service Bus monitoring, and get powerful toolsets and actionable insights to troubleshoot messaging issues with the help of Serverless360.
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.