Most of the organizations have invested in numerous cloud services and applications where they wouldexpect to have complete visibility into their cloud environments to make sure that their resourcesare in expected and healthy state.
Almost all the cloud providers, including Microsoft Azure, provides management and monitoring tools to help users ensure goodperformance and availability of their Azure applications. In this blog, let us investigate the what you can achieve with Azure offering and some of the good to have capabilities.
What is availability?
Availability is the ability of an application or resource to perform as required or expected by the user at any given time. Availability can be achieved only by usingthe best diagnostics and monitoring techniques.
Why is it important to monitor the availability of your Azure resources and applications?
- Azure availability monitoring is very important as it helps to detect the unexpected errors or changes occurring in your Azure applications. For example, An entity of your application fails or stops responding.
- Also, it is highly essential to reduce the downtime of your applications as they can be caused due to several issueslike Server failures, Storage failures, Application errors, Power outages or even natural disasters where solving these might be time-consuming and can cause heavy financial loss.So, availability monitoring plays a crucial role in reducing the downtime to a greater extent.
Knowing the importance of Availability monitoring, Azure came up with a solution and there are also other third-party tools like Serverless360 with advanced features that are to be considered.
Availability monitoring in Azure
As we know, availability is one of the very important parameters to monitor the heath of an Azure resource or application.
We will now find out how to monitor the availability of an Azure Web application using Application Insights which is a feature of Azure Monitor.
- First,deploy the web application or website and then set up the recurring tests to monitor availability and responsiveness.
- There are different types of availability tests and youmust choose one according to your needs. The types include a simple check by providing a URL (URL ping test), complex Multi-step web test that should be uploaded to Application Insights after creating it using Visual Studio and Custom track availability tests.
- Then, click the Availability tab on the Application Insight resource in the Azure portal to create an availability test.
- Add new tests by clicking “+Add Test” and then we choose the type of test. For now, let’s go with “URL ping test” where we must just give the URL of the application that is to be monitored.
- “URL ping test” does not make use of ICMP (Internet Control Message Protocol) to check your site’s availability but it uses more advanced HTTP request functionality to check if an endpoint is responding.
- The availability test results can also be visualised in the Azure portal in different views like line and scatter plot views.
Azure monitor supports checking the availability of siloed Azure resources but monitoring an entire application consisting of Service Bus, Logic Apps, Web Apps etc is not possible in Azure portal.
Let’s see how Serverless360 helps
Serverless360 can logically group all the siloed Azure resources into a single application using Composite Application features where this helps the users to monitor their resources in the application context.
There are variety of monitoring options available in Serverless360 including State Monitor, Threshold Monitor, Data Monitor & Watch Monitor where each monitor will have a unique role to be performed.
Among these monitors, ThresholdMonitor will be the right choice to check the availability for tracking the health of your Azure resources and applications.
Threshold monitoring
As mentioned above, threshold monitoring will be of great help in checking the availability where these monitors would help in detecting violation in the state of the entities and the user would also get notified through the configured notification channels whenever the Azure entity is not in the expected state.
It is also now updated with autocorrect capability to modify the state of the entity and restore the application to a healthy state without any manual intervention.
Below is a sample notification you would receive through the Threshold monitors.
Real-time scenario
If you are wondering why one should be concerned about the service bus availability given the Microsoft SLA, this real-time use case might help you to understand the significance.
Consider a Northwind company that has a simple web application that pushes a message onto a service bus queue when a form is being filled.
The form approx. takes 5 minutes of a user’s time to fill out and the company does want to ensure that the Service Bus is available when the user pushes the Submit button. As they are more concerned about the user’s time and don’t want to lose the business-critical message, they want the check done before the user fills in the form.
If in case they get notified on the service bus queue unavailability, they could simply redirect the user to an error page and hence save the user’s time and get the form filled later.
This is where Serverless360 comes into the game and notifies the stakeholders on the unavailability of the Azure Service Bus through its extensive monitors. Also, it tries to bring back the queue to the active state via its unique “AutoCorrect” feature.
Conclusion
Hopefully, this blog helps you understand the importance of monitoring the availability of your Azure resources and applications. Ithighlights the solution provided by Azure monitor to check the availability of a Web application and about the extensive monitoring technique that Serverless360 offers to help you with Availability monitoring.