1

Azure ポータルを見回したり、ネットで検索したりしましたが、答えが見つかりませんでした。おそらくAPIまたはPowerShellを介して、Webジョブのメトリックを取得する方法はありますか? 個々のジョブあたりの平均実行時間など? また、Web ジョブがトリガーするメッセージの平均キュー時間も調べたいと思います (ただし、これはおそらく Web ジョブ メトリックではなく、ストレージ メトリックです)。任意のポインタをいただければ幸いです。

4

2 に答える 2

2

イゴレクが言ったように、私もそれは不可能だと思います。アプリケーションを監視するツールは多数あります。そのうちの 2 つは Azure と統合されています。

Application Insights を使用して Web ジョブからメトリックを送信しました。このチュートリアルに従って、Web ジョブで Application Insights をセットアップできます。

キューからのメッセージを処理する時間を計算したい場合は、次のようにすることができます:

public async Task ProcessAsync([ServiceBusTrigger("queueName")] BrokeredMessage incommingMessage)
{
    var stopwatch = Stopwatch.StartNew();

    // Process your message
    ...

    stopwatch.Stop();

    // You should only instantiate the TelemetryClient once in your application.
    var telemetryClient = new TelemetryClient() { InstrumentationKey = "MyInstrumentationKey"};

    //Send your metric
    telemetryClient.TrackMetric("ProcessQueueMessageElapsedTime", stopwatch.ElapsedMilliseconds);
}
于 2016-03-22T20:37:00.500 に答える