Monitoring is highly essential to ensure the availability and performance of any application. In the same way, your Azure resources should be monitored in various aspects to make use of them to their fullest potential.
As we know, there are various tools available to monitor these resources which includes Azure monitor and other Azure monitor alternative tools (Serverless360). So, choosing an appropriate tool for your business is very important, and I hope this article helps you to do that.
What is an Azure monitor?
Azure Monitor is the native solution for monitoring Azure resources. It collects data in the form of metrics and logs from all your resources which are used to monitor performance, create alerts, troubleshoot issues quickly and create dashboards to have full visibility on your resources. Azure monitor ultimately ensures the performance and availability of your Azure resources and applications.
Azure monitor supports monitoring the following resources
- Service Bus
- Logic Apps
- Event Hubs
- App Services
- Storage Accounts
- Resource Groups
Below is a picture from Microsoft document which clearly shows everything that can be covered in Azure monitoring.
Expectation vs Reality
Expectation: Any Azure user would have an expectation to monitor their entire serverless application, but this cannot be achieved using Azure monitor. An application will surely consist of more than one resource like Logic Apps, Functions, Service Bus etc whereas Azure portal supports monitoring only the siloed entities and not the application.
Also, by using Application Insights which is a feature of Azure monitor you can monitor live web applications but the expectation to monitor an entire Azure serverless application is not yet fulfilled.
Reality: The above problem can be solved by using Composite Applications feature of Serverless360 where you can group entities from different Azure subscriptions, regions and resource groups. Hence, it is possible to monitor the whole application that contains different Azure services like Logic Apps, Service Bus etc with Composite Applications.
Expectation: Alerts play a crucial part in identifying and solving the issues as they notify about important conditions of your Azure resources. So, the need would be to have alerts by configuring number of conditions but in Azure portal only two conditions can be added to an alert and the cost for having two conditions in an alert would be $0.20.
If you want to monitor more conditions, the number of alerts should be increased which is not economical.
Reality: Serverless360 provides an extensive monitoring support with Status, Threshold, Watch and Data monitors where each monitor has a specified task to be performed and the number of monitors configured for an Azure resource or application do not impact the subscription cost.
Expectation: Azure users would expect to monitor different entities in a single alert as that would help to a greater extent in reducing the cost, but Azure monitor doesn’t support this where each entity will need a separate alert.
Reality: In Serverless360, it is possible to create multiple monitors for an Azure entity and it also supports monitoring multiple entities in single monitor.
Expectation: Imagine you are using Azure Service Bus, in that case the need would be to monitor several metrics like incoming messages, outgoing messages, count of active messages etc. Azure monitor does allow monitoring on metrics but with a huge limitation, as we know only two metrics can be configured per alert. So, number of metrics can be monitored only by increasing the number of alerts which will eventually add up to the cost. So, monitoring multiple metrics is not easy using Azure monitor.
Reality: Serverless360 allows to monitor multiple resources on an exhaustive list of metrics with no additional cost and this can be done by enabling Data monitors.
Expectation: Getting several monitoring reports for various entities is time consuming. So, users would expect to get one consolidated report for all the Azure entities, but this option is not available in Azure monitor.
Below picture shows a report that you get through Azure monitor.
Reality: Status of all the entities that are associated with the monitors of Serverless360 can be obtained in a single report without any extra effort or additional costs.
The below picture shows a sample of consolidated monitoring report.
Expectation: An Issue arises if the application is in disabled state and the expected state is to be active. In that case, it is necessary to automatically notify the operation team through notification channels to quickly solve the issues. So, Azure users would expect to monitor the state of serverless applications to reduce its downtime, but Azure monitor doesn’t support state monitoring.
Reality: Status monitoring is one of the attractive features of Serverless360 where it is possible to monitor the Azure resources based on properties. Also, get notified at required intervals regarding the status of the application.
Expectation: In a real-time scenario, any organization would surely use integrated Azure services that turns out to be complex as the integrate solution keeps growing as the requirement of the user grows. So, it would be better to have end to end business tracking.
This is an example of a booking application consisting of various Azure services integrated with each other. Here, the Azure monitor supports monitoring the siloed Azure resources whereas the user would expect to have visibility on the business transactions.
Reality: Business Activity Monitoring (BAM) of Serverless360 will help you with that where it provides end to end tracking on your Azure serverless applications. It has the ability to monitor your business transactions which helps the support team to quickly get notified of the issues that are arising during the transactions. BAM also allows to perform the following actions like track, search, reprocess and analyze.
Expectation: Azure users would expect to have more options to choose from when it comes to notification channels because notification plays a major role to quickly identify and solve the issues arising in your Azure resources or when there is something going wrong with your activity logs, but Azure monitor supports only a very limited number of notifying channels which includes SMS, email &web hook.
Reality: Serverless360 supports integration with a wide range of notification channels which includes Pager Duty, Operations Management Suite, Slack, Microsoft Teams along with Webhook and email channels.
Hopefully, this article would have given you an idea of problems users face while using Azure monitors and with that we have also provided a handy solution to solve those problems where 3rd party tools like Serverless360 can be used to complement the Azure monitor.