Azure WebJobs和队列相关度量标准

时间:2016-03-21 19:43:14

标签: azure azure-webjobs azureportal

我浏览了Azure门户并搜索了网络,但我一直无法找到答案。有没有办法,可能通过api或powershell,获取webjobs上的指标?比如每个人的平均运行时间?我还想找出webjob触发的消息的平均排队时间(尽管这可能是存储指标而不是webjob指标)。任何指针都会受到赞赏。

2 个答案:

答案 0 :(得分:2)

如果没有第三方服务,不要认为这是可能的..事实上,我所知道的唯一一个具体做的就是CloudMonix,我是其所属的。

答案 1 :(得分:2)

正如Igorek所说,我也不认为这是可能的。有许多工具可以监控应用程序。其中两个有Azure集成:

我已使用Application Insights从webjob发送指标。您可以按照本教程在webjob中设置应用程序洞察:

如果要计算从队列处理消息的时间,可以执行以下操作:

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);
}