2016-03-21 4 views
1

Ich habe mich im Azure-Portal umgesehen und das Internet durchsucht, konnte aber keine Antwort finden. Gibt es einen Weg, vielleicht über die API oder Powershell, Metriken auf Webjobs zu bekommen? Wie durchschnittliche Laufzeit pro einzelnen Job? Ich möchte auch die durchschnittliche Wartezeit einer Nachricht ermitteln, von der ein Web-Job ausgelöst wird (obwohl dies wahrscheinlich eine Speichermetrik und keine Web-Job-Metrik ist). Alle Hinweise würden geschätzt werden.Azurblaue WebJobs und Queue-relevante Metriken

Antwort

2

Wie Igorek sagte, ich glaube nicht, dass es auch möglich ist. Es gibt viele Tools zum Überwachen der Anwendung. Zwei von ihnen haben Azure Integration:

Ich habe Praktische Anwendung verwendet, um von einer webjob Metrik zu senden. Sie können dieses Tutorial Setup Anwendungs ​​Einsichten folgen n Ihre webjob:

Wenn Sie die Zeit berechnen möchten eine Nachricht aus einer Warteschlange zu verarbeiten, können Sie so etwas tun:

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

Dank Thomas. Ich verwende AI auf unserer Website für allgemeine Messwerte, aber ich vergesse immer, dass ich benutzerdefinierte Messwerte verfolgen kann. –

+0

Yeah Ich habe das gleiche Problem manchmal, weil ich mein Gehirn jeden Morgen vor der Ankunft im Büro zurückgesetzt ^^ – Thomas

2

Denken Sie nicht, dass dies ohne Drittanbieter-Dienste möglich ist. In der Tat, der einzige, den ich weiß, dass das Zeug speziell ist CloudMonix, mit dem ich verbunden bin.