Introduktion till molntjänstövervakning (klassisk)
Viktigt!
Cloud Services (klassisk) är nu inaktuellt för alla kunder från och med den 1 september 2024. Alla befintliga distributioner som körs stoppas och stängs av av Microsoft och data försvinner permanent från och med oktober 2024. Nya distributioner bör använda den nya Azure Resource Manager-baserade distributionsmodellen Azure Cloud Services (utökad support).
Du kan övervaka viktiga prestandamått för alla molntjänster. Varje molntjänstroll samlar in minimala data: CPU-användning, nätverksanvändning och diskanvändning. Om molntjänsten har Microsoft.Azure.Diagnostics
tillägget tillämpat på en roll kan den rollen samla in fler datapunkter. Den här artikeln innehåller en introduktion till Azure Diagnostics for Cloud Services.
Med grundläggande övervakning samplas prestandaräknardata från rollinstanser och samlas in med 3 minuters intervall. Dessa grundläggande övervakningsdata lagras inte i ditt lagringskonto och har ingen extra kostnad associerad med dem.
Med avancerad övervakning samplas fler mått och samlas in med intervall på 5 minuter, 1 timme och 12 timmar. Aggregerade data lagras i ett lagringskonto i tabeller och rensas efter 10 dagar. Lagringskontot som används konfigureras per roll. du kan använda olika lagringskonton för olika roller. Du använder en anslutningssträng i .csdef- och .cscfg-filerna för konfiguration.
Grundläggande övervakning
Som anges i introduktionen samlar en molntjänst automatiskt in grundläggande övervakningsdata från den virtuella värddatorn. Dessa data omfattar cpu-procent, nätverksanvändning och diskläsning/-skrivning. Insamlade övervakningsdata visas automatiskt på översikts- och måttsidorna för molntjänsten i Azure Portal.
Grundläggande övervakning kräver inget lagringskonto.
Avancerad övervakning
Avancerad övervakning omfattar användning av Azure Diagnostics-tillägget (och eventuellt Application Insights SDK) för den roll som du vill övervaka. Diagnostiktillägget använder en konfigurationsfil (per roll) med namnet diagnostics.wadcfgx för att konfigurera de diagnostikmått som övervakas. Azure Diagnostic-tillägget samlar in och lagrar data i ett Azure Storage-konto. De här inställningarna konfigureras i .wadcfgx-, .csdef- och .cscfg-filerna. Det innebär att det finns en extra kostnad i samband med avancerad övervakning.
När varje roll skapas lägger Visual Studio till Azure Diagnostics-tillägget till det. Det här diagnostiktillägget kan samla in följande typer av information:
- Anpassade prestandaräknare
- Programloggar
- Windows-händelseloggar
- .NET-händelsekälla
- IIS-loggar (Internet Information Services)
- Manifestbaserad händelsespårning för Windows (ETW)
- Kundfelloggar
Viktigt!
Alla dessa data aggregeras till lagringskontot, men portalen tillhandahåller inget internt sätt att kartlägga data. Vi rekommenderar starkt att du integrerar en annan tjänst, till exempel Application Insights, i ditt program.
Konfigurera diagnostiktillägg
Börja med att skapa ett om du inte har ett klassiskt lagringskonto. Kontrollera att lagringskontot har skapats med den klassiska distributionsmodellen angiven.
Gå sedan till lagringskontoresursen (klassisk). Välj Inställningar>Åtkomstnycklar och kopiera värdet Primär anslutningssträng. Du behöver det här värdet för molntjänsten.
Det finns två konfigurationsfiler som du måste ändra för att avancerad diagnostik ska aktiveras, ServiceDefinition.csdef och ServiceConfiguration.cscfg.
ServiceDefinition.csdef
I filen ServiceDefinition.csdef lägger du till en ny inställning med namnet Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString
för varje roll som använder avancerad diagnostik. Visual Studio lägger till det här värdet i filen när du skapar ett nytt projekt. Om den saknas kan du lägga till den nu.
<ServiceDefinition name="AnsurCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
<WorkerRole name="WorkerRoleWithSBQueue1" vmsize="Small">
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />
Det här kodfragmentet definierar en ny inställning som måste läggas till i varje ServiceConfiguration.cscfg-fil .
Förmodligen har du två .cscfg-filer , en med namnet ServiceConfiguration.cloud.cscfg för distribution till Azure och en med namnet ServiceConfiguration.local.cscfg som används för lokala distributioner i den emulerade miljön. Öppna och ändra varje .cscfg-fil . Lägg till en inställning med namnet Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString
. Ange värdet till primärt anslutningssträng för det klassiska lagringskontot. Om du vill använda den lokala lagringen på utvecklingsdatorn använder du UseDevelopmentStorage=true
.
<ServiceConfiguration serviceName="AnsurCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2015-04.2.6">
<Role name="WorkerRoleWithSBQueue1">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=mystorage;AccountKey=KWwkdfmskOIS240jnBOeeXVGHT9QgKS4kIQ3wWVKzOYkfjdsjfkjdsaf+sddfwwfw+sdffsdafda/w==" />
<!-- or use the local development machine for storage
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
-->
Använda Application Insights
När du publicerar molntjänsten från Visual Studio kan du skicka diagnostikdata till Application Insights. Du kan skapa Application Insights Azure-resursen vid den tidpunkten eller skicka data till en befintlig Azure-resurs. Application Insights kan övervaka din molntjänst för tillgänglighet, prestanda, fel och användning. Anpassade diagram kan läggas till i Application Insights så att du kan se de data som är viktigast. Rollinstansdata kan samlas in med hjälp av Application Insights SDK i molntjänstprojektet. Mer information om hur du integrerar Application Insights finns i Application Insights med Cloud Services.
Du kan använda Application Insights för att visa prestandaräknarna (och de andra inställningarna) som du angav via Microsoft Azure Diagnostics-tillägget, men du får bara en bättre upplevelse genom att integrera Application Insights SDK i dina arbets- och webbroller.