Microsoft.WindowsAzure.Diagnostics のパフォーマンス監視については認識しています。System.Diagnostics.PerformanceCounter を使用するなど、よりリアルタイムなものを探しています。アイデアは、AJAX 要求でリアルタイム情報が送信されるということです。
Azure で利用可能なパフォーマンス カウンターの使用: http://msdn.microsoft.com/en-us/library/windowsazure/hh411520
次のコードは機能します (または、少なくとも Azure コンピューティング エミュレーターでは、Azure への展開で試したことはありません)。
protected PerformanceCounter FDiagCPU = new PerformanceCounter("Processor", "% Processor Time", "_Total");
protected PerformanceCounter FDiagRam = new PerformanceCounter("Memory", "Available MBytes");
protected PerformanceCounter FDiagTcpConnections = new PerformanceCounter("TCPv4", "Connections Established");
MSDN ページのさらに下には、使用したい別のカウンターがあります: Network Interface(*)\Bytes Received/sec
パフォーマンスカウンターを作成してみました:
protected PerformanceCounter FDiagNetSent = new PerformanceCounter("Network Interface", "Bytes Received/sec", "*");
しかし、「*」は有効なインスタンス名ではないという例外が表示されます。
これも機能しません:
protected PerformanceCounter FDiagNetSent = new PerformanceCounter("Network Interface(*)", "Bytes Received/sec");
Azure でパフォーマンス カウンターを直接使用することは嫌われていますか?