Azure Diagnostics is the capability within Azure that enables the collection of diagnostic data on a deployed application. You can use the diagnostics extension from a number of different sources. Currently supported are Azure Cloud Service Web and Worker Roles, Azure Virtual Machines running Microsoft Windows and Service Fabric. Other Azure services have their own separate diagnostics.
Data you can collect
Azure Diagnostics can collect the following types of data:
|Performance counters||Operating System and custom performance counters|
|Application Logs||Trace messages written by your application|
|Windows Event logs||Information sent to the Windows event logging system|
|.NET Event Source||Code writing events using the .NET EventSource class|
|IIS Logs||Information about IIS web sites|
|Manifest based ETW||Event Tracing for Windows events generated by any process|
|Crash dumps||Information about the state of the process in the event of an application crash|
|Custom error logs||Logs created by your application or service|
|Azure Diagnostic infrastructure logs||Information about Diagnostics itself|
The Azure diagnostics extension can transfer this data to an Azure storage account or send it to services like Application Insights. You can use the data for debugging and troubleshooting, measuring performance, monitoring resource usage, traffic analysis and capacity planning, and auditing.
Choose which service you are trying to collect diagnostics on and use the following articles to get started. Use the general Azure diagnostics links for reference for specific tasks.
Note that Web Apps do not use Azure Diagnostics. Find the equivalent information at Web Apps
Cloud Services using Azure Diagnostics
- If using Visual Studio, see Use Visual Studio to trace a Cloud Services application to get started. Otherwise, see
- How to monitor Cloud services using Azure Diagnostics
- Set up Azure Diagnostics in a Cloud Services Application
For more advanced topics, see
- Using Azure Diagnostics with Application Insights for Cloud Services
- Trace the flow of a Cloud Services application with Azure Diagnostics
- Use PowerShell to set up diagnostics on Cloud Services
Virtual Machines using Azure Diagnostics
- If using Visual Studio, see Use Visual Studio to trace Azure Virtual Machines to get started. Otherwise, see
- Set up Azure Diagnostics on an Azure Virtual Machine
For more advanced topics, see
- Use PowerShell to set up diagnostics on Azure Virtual Machines
- Create a Windows Virtual machine with monitoring and diagnostics using Azure Resource Manager Template
Service Fabric using Azure Diagnostics
Get started at Monitor a Service Fabric application. Many other Service Fabric diagnostics articles are available in the navigation tree on the left once you get to this article.
General Azure Diagnostics articles
- Azure Diagnostics Schema Configuration - Learn how to change the schema file to collect and route diagnostics data. Note that you can also use Visual Studio to change the schema file.
- How Azure Diagnostics data is stored in Azure Storage - Know the names of the tables and blobs where the diagnostic data is written.
- Learn to use Performance Counters in Azure Diagnostics.
- Learn to Route Azure diagnostics information to Application Insights
- If you have trouble with diagnostics starting or finding your data in Azure Storage tables, see TroubleShooting Azure Diagnostics