WindowsWebAppDiagnoser is a command-line diagnostic tool designed to help you quickly identify and troubleshoot availability issues in your Windows-based Azure Web Apps. The tool analyzes HTTP request patterns and provides automated root cause analysis for server errors with actionable recommendations.
⚠️ Preview Notice: This tool is currently in preview. New diagnostic scenarios and capabilities are being added regularly.
For detailed information about the tool's capabilities and diagnostic logic, see:
Explore example diagnostic reports generated by WindowsWebAppDiagnoser:
- ✅ HTTP 5xx Error Investigation - When your web app is experiencing server errors (500, 502, 503, etc.)
- ✅ Availability Issues - When your web app availability has dropped below expected levels
- ✅ Incident Response - During active outages to quickly identify the type and frequency of errors
- ✅ Post-Incident Analysis - To understand what HTTP errors occurred during specific time periods
- ✅ Error Pattern Analysis - To identify which HTTP error types are most impactful
- ✅ Basic Health Checks - To get a quick overview of web app availability status
Get the latest release from the releases section, or run the following command to download the tool on Windows
curl -L -o WindowsWebAppDiagnoser.exe https://github.com/puneetg1983/WindowsWebAppDiagnoser/releases/latest/download/WindowsWebAppDiagnoser.exe
You can run this program from Azure Console by going to http://portal.azure.com/#cloudshell and running the below
curl -L -o WindowsWebAppDiagnoser https://github.com/puneetg1983/WindowsWebAppDiagnoser/releases/latest/download/WindowsWebAppDiagnoser && chmod +x WindowsWebAppDiagnoser
Then, run the tool like this
./WindowsWebAppDiagnoser -r <Azure_Resource_Id>
Note: For this to work, you "must" 'Switch to Bash' cloud shell because WindowsWebAppDiagnoser (not WindowsWebAppDiagnoser.exe) is a Linux package
To download the HTML report generated by the tool, follow these steps:
- Run the
lscommand to see the list of files in your Cloud Shell session. - Click the Manage files button in the Cloud Shell interface.
- Choose Download under the Manage files menu.
- Enter the name of the HTML report file you want to download.
- Click the Download button to save the report to your local machine.
WindowsWebAppDiagnoser collects telemetry about tool runs to help improve the product. Special care is taken to ensure that no personally identifiable information (PII) or secrets are captured in telemetry. If the tool detects any exception messages, it masks them before logging to further protect sensitive information.