Windows Azure Diagnostics


Published on

Overview of Windows Azure Diagnostics

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Windows Azure Diagnostics

  1. 1. Windows Azure Diagnostics Neil Mackenzie
  2. 2. Overview• Motivation for Windows Azure Diagnostics• Architecture of WAD• Configuring WAD• Managing WAD• Demonstration
  3. 3. Why Windows Azure Diagnostics?WAD Provides:• visibility into instance VMs• access to IIS logs, event logs and traces• configuration of diagnostic information captured• consistent way to persist diagnostic informationWAD Supports:• non-intrusive investigation of problems• auto-scaling through access to performance countersIntelliTrace
  4. 4. WAD ArchitectureDiagnostics Agent• Runs on each instance• Persists diagnostic data to Azure StorageConfiguration• Instance-specific WAD configuration• Located in an Azure Blob container• Polled by Diagnostics AgentAzure Storage• WAD uses blobs, tables and queues.NET API
  5. 5. ConfigurationWAD Configuration• Instance-specific blobs in wad-control-containerWAD Configuration specifies:• data buffers to be captured• data buffers to be persisted• transfer scheduleWAD .NET API updates WAD configurationDiagnostics Agent:• polls WAD configuration to identify changes.• implements changes
  6. 6. Data Buffers WAD captures data to the data buffer WAD persists data to the Azure Storage locationData Buffer Azure Storage LocationWindows Azure logs * WADLogsTableWindows Diagnostic infrastructure logs * WADDiagnosticsInfrastructureLogsTableIIS 7.0 logs (webrole) * wad-iis-logfiles (blobs)Failed Request logs (webrole) wad-iis-failedreqlogfiles (blobs)Windows Event logs WADWindowsEventLogsTablePerformance counters WADPerformanceCountersTableCrash dumps wad-crash-dumps (blobs)Custom error logs Configurable (blobs)* Captured by defaultWADDirectoriesTable contains one entity for each blob stored by WAD
  7. 7. Custom LoggingWAD supports custom loggingConfigure:• Capture directory in local storage• Persistence location in Azure Blob storage• Transfer schedule
  8. 8. PersistenceScheduled Transfers• Routine transfers to persistent storage• Transfer period specific to a data bufferOn-Demand Transfers• Immediate need to persist data• Possibility of duplicate data in persistent storageCleanup• WAD does not cleanup persisted data• Should not delete the tables/containers
  9. 9. Managing WADDiagnostics Agent started automatically• Default configurationWAD managed on a per-instance basis• Use RoleInstanceDiagnosticManager• Get WAD configuration for instance• Modify WAD configuration• Set current WAD configuration for the instance
  10. 10. On-Demand TransfersOn-Demand transfers configured for:• Instance• Data bufferUse RoleInstanceDiagnosticManager• Configure on-demand transfer• Request on-demand transferCleanup on-demand transfer• Get completion message from WAD notification queue• End on-demand transferOne on-demand transfer per data buffer
  11. 11. ToolsCerebrata• Azure Diagnostics ManagerMicrosoft• Systems Center Operations Manager – Windows Azure Management Pack RC
  12. 12. DemoWeb role with two instances demonstratingvarious aspects of Windows Azure Diagnostics
  13. 13. Contact Information• Neil Mackenzie• Twitter: @mknz• Blog: