When modernizing web applications, you want a diagnostic tool that has your back and helps you quickly fix any issues that may arise—whether it’s internal server errors or the entire site going down. If you are using App Service, you have built-in access to App Service diagnostics, an intelligent and interactive troubleshooting solution. It is built right into App Service, which means there is no setup delay and no additional cost to get started.
Imagine you are modernizing a web app to Azure and discover a web availability problem. Running a simple check using Diagnose and solve problems tool can quickly help determine why your app was experiencing those symptoms—and what you can do to fix it. App Service diagnostics’ Diagnose and solve problems tool contains a built-in suite of troubleshooting capabilities—on top of all the other rich monitoring observability technologies that are part of the Azure stack—to help you understand the health of your web app.
In this video, Senior Product Manager Dalibor Kovacevic demonstrates how easy it is to use the Diagnose and solve problems tool to troubleshoot a sample app called buggybakery in Azure Web App for Windows.
Your trusted co-pilot for web app diagnostics
Using the Diagnose and solve problems tool (highlighted in red below), you can search for diagnostics, view risk alerts, and select troubleshooting categories while it runs in the background.
Here is a closer look at the troubleshooting capabilities of the Diagnose and solve problems tool:
Ask Genie search box: Just drop in a search term (e.g., “web app down”) to quickly find a diagnostic
Risk Alerts: Perform a series of configuration checks and receive recommendations for your app, tailored to your web app
Troubleshooting categories: From availability and performance to Secure Sockets Layer (SSL) and domains, categories are grouped for easy discovery and to get you started on the right foot
Diagnostic reporting: Leverage interactive data, graphs, and markdowns to get help pinpoint a problem with your app. Then, go deeper and investigate application code issues, slowness, connection strings and more
Resiliency Score report helps with continuous improvement
A new feature within App Service diagnostics is the Resiliency Score report —a downloadable report that analyzes your Web App environment and provides feedback against a set of best practices developed by Azure engineers, customers, and partners. The report facilitates the use of recommended settings and features to make your App Service more resilient to availability failures.
To create your report, go to the top of any diagnostic page and click Get Resilience Report. The report will be available momentarily and includes a Resiliency Score (a weighted calculation based on which best practices were followed, from 0-100.) In this example, you can see buggybakery’s score of 29.8 falls in the red zone (poor) indicating there are more ways to make the web app resilient. A score of 80 or higher is considered highly resilient.
Along with your Resiliency Score, you receive a contributing factors table, a general overview of all the features and how well they have been implemented. A quick assessment can help determine which features you can consider implementing to help improve the performance of your web app.
Set up Auto Healing to act when your app is having an unexpected behavior
Also built right into App Service diagnostics and as part of Azure App Service is the Auto Healing feature (highlighted in red below). Auto-healing is a set of mitigation actions you can define to resolve certain unexpected behavior. Use the tool to temporarily mitigate an unexpected behavior until you find the root cause. You can set your own rules based on request count, slow request, memory limit, and HTTP status code to trigger mitigation actions. Use Auto Healing to:
Define conditions: Choose from request duration, memory limit, request count, or status codes
Configure actions: Select which mitigation action to perform, including recycle process, log an event, or even custom actions (e.g., run diagnostics)
Override when actions execute (optional): Specify how much time the mitigation rule should wait after a process startup before the mitigation rule kicks off
Review and save: Review the rules you just created and save them
Azure App Service diagnostics is a versatile and powerful tool that can help you minimize the time, effort, and cost of app downtime. The tool is compatible across many Azure services making it an invaluable part of your app modernization strategy.
Try App Service Diagnostics today!
Try out App Service Diagnostics in your own environment today by visiting the Azure portal. Please share your feedback with us in the comments or discussion forum. Our engineers are always looking for more ways to help you on your web app development journey.