2016-09-14 3 views
2

Ich habe mich umgesehen und ich kann kein präzises Beispiel um diese Metrik zu erhalten. Ich habe WindowsAzure.Management.Compute installiert und jetzt weiß ich nicht, wo ich anfangen soll. Wie kann das gemacht werden?Get Instance Anzahl der Azure Web App mit C#

Antwort

2

Ich würde Ihnen empfehlen, einen Blick auf Azure Resource Explorer zu werfen: https://resources.azure.com. Sie könnten die Instanzen Anforderungs-URL wie folgt finden:

enter image description here

Für den Authorization-Header bitte einen Blick auf this article haben. Wir können C# HttpRequest verwenden, um den Code zu schreiben. Hier ist das Ergebnis, das ich in Fildder getestet habe.

der Endpunkt:

https://management.azure.com/subscriptions/<subscription id > /resourceGroups/jatestgroup/providers/Microsoft.Web/sites/testcore1/instances?api-version=2015-08-01

Ergebnis:

enter image description here

Wir können die Instanznummer aus der Antwort berechnen JSO n. Darüber hinaus benötigt es in dieser Rest-API eine lange Zeit, um alle Instanzen anzuzeigen, wenn die Instanz im Azure-Portal skaliert wird.

[Update]

Laut mit meinem Kommentar, ich mit dem Artikel getestet: http://blog.amitapple.com/post/2014/03/access-specific-instance/#.V9tLKyh95hF

Das folgende ist mein Ergebnis:

enter image description here

Bitte laden Sie die Bibliothek an here . Weitere Informationen zu Windows Azure-Verwaltungszertifikaten finden Sie unter this article.

Hier ist der Code snipped:

 var cert = new X509Certificate2(); 

    cert.Import(Convert.FromBase64String("")); 

    var _client = new Microsoft.WindowsAzure.Management.WebSites.WebSiteManagementClient(new Microsoft.WindowsAzure.CertificateCloudCredentials("****", cert)); 

    var ids= await _client.WebSites.GetInstanceIdsAsync("EastAsiawebspace", "testcore1"); 
+0

Gibt es SDK-Unterstützung dafür? Was ich suche ist einfach - 'C# instance count' – SB2055

+1

Wenn ich die Seite über Microsoft.Azure.Management.Websites bekomme. site.SiteConfig ist null. Ich konnte die NumberOfWorker nicht von dieser Assembly abrufen (diese Assembly ist die neueste Version). Ich würde vorschlagen, dass Sie meine Methode ausprobieren. Es ist einfacher als C# SDK zu verwenden. Wenn Sie ein spezielles Szenario haben, können Sie einen neuen Thread erstellen. –

+0

Danke, dass du versucht hast zu helfen. – SB2055

1

Sie können die Instanzanzahl nicht innerhalb einer Instanz der Web App abrufen. Sie können es jedoch über das Portal oder über die Azure ARM-API abrufen (die Eigenschaft numberOfWorkers auf dem Webhosting-Plan-Objekt).

Beachten Sie außerdem, dass WindowsAzure.Management.Compute nicht für Azure Web App gilt.

+0

Ich versuche, einige Metriken in meine app über C# zu füttern - eine davon ist die aktuelle Instanz zählen. Kann ich die Azure ARM API mit C# verwenden? Wenn ja, würden Sie gerne ein Beispiel dafür geben, wie Sie diese Informationen erhalten? – SB2055