Dela via


Beräkningsdiagnostikdata för Windows Azure Platform as a Service (PaaS)

När du måste felsöka ett problem är en av de viktigaste sakerna att förstå vilka diagnostikdata som är tillgängliga. Om du inte vet var du ska leta efter loggar eller annan diagnostikinformation kan du behöva använda metoden för utvärdering och fel eller hagelgevär för felsökning. Om du har åtkomst till loggar har du större chans att diagnostisera eventuella problem, även om det inte finns inom ditt expertområde.

I den här artikeln beskrivs de data som är tillgängliga i PaaS-beräkningsmiljöer (Plattform som en tjänst) i Azure. Den beskriver hur du enkelt kan samla in dessa data från en virtuell Windows PaaS-dator (VM).

Följande avsnitt innehåller de vanligaste datakällorna när du felsöker problem på en virtuell Windows PaaS-dator. Avsnitten sorteras ungefär efter prioritet (hur ofta loggen används för att diagnostisera problem).

Windows Azure-händelseloggar

Windows Azure-händelseloggar innehåller viktiga diagnostiska utdata från Azure-körningen. Loggarna registrerar information om sådana händelser som följande:

  • Rollstarter och stopp
  • Startaktiviteter
  • OnStart starta och stoppa
  • OnRun starta
  • Kraschar
  • Återvinner

Så här visar du Windows Azure-händelseloggarna:

  1. På Start-menyn söker du efter Loggboken och väljer sedan appen.

  2. I navigeringsfönstret expanderar du Program- och tjänstloggar och väljer sedan Windows Azure.

Den här diagnostikkällan hjälper dig att identifiera orsaken till flera av de vanligaste problemen som hindrar Azure-roller från att starta korrekt. Dessa inkluderar startaktivitetsfel och krascher i OnStart eller OnRun. Loggboken samlar in krascher i Azure Runtime-värdprocesserna som kör din rollpostpunktskod (till exempel WebRole.cs eller WorkerRole.cs) och tillhandahåller anropsstackar.

Programhändelseloggar

Du kan använda programhändelseloggar för standardfelsökning på både Azure-servrar och lokala servrar. Du kan ofta hitta w3wp.exe-relaterade fel i dessa loggar.

Så här visar du programhändelseloggarna:

  1. På Start-menyn söker du efter Loggboken och väljer sedan appen.

  2. I navigeringsfönstret expanderar du Windows-loggar och väljer sedan Program.

Körningsloggar för appagent

Appagentens körningslogg finns i C:\Logs\AppAgentRuntime.log och skrivs av WindowsAzureGuestAgent.exe körbar fil. Loggen innehåller information om händelser som inträffar i gästagenten och den virtuella datorn. Den här händelseinformationen omfattar, men är inte begränsad till, följande kategorier:

  • Konfigurering av brandvägg
  • Ändringar i rolltillstånd
  • Återvinner
  • Omstarter
  • Ändringar i hälsostatus
  • Rollen stoppas och startas
  • Certifikatkonfiguration

Den här loggen är användbar för att få en snabb översikt över de händelser som inträffar över tid till en roll. Det beror på att den registrerar större ändringar i rollen utan att logga pulsslag. Om gästagenten inte kan starta rollen korrekt (till exempel om en låst fil förhindrar katalogrensning) visas händelsen som registrerats i den här loggen.

Pulsslagsloggar för appagent

Pulsslagsloggen för appagenten finns i C:\Logs\WaAppAgent.log och skrivs av den WindowsAzureGuestAgent.exe körbara filen. Den innehåller statusinformation om hälsoavsökningarna till värdens bootstrapper.

Gästagentprocessen ansvarar för att rapportera hälsostatus (till exempel Ready eller Busy) till infrastrukturresursen. Därför är hälsostatusen som den här loggrapporten är densamma som den status som visas i hanteringsportalen. Loggen är användbar för att fastställa det aktuella tillståndet för rollen i den virtuella datorn, eller för att avgöra vad tillståndet var vid en tidigare tidpunkt. Du kan ange problembeskrivningar som "Min webbplats var nere från 10:00 till 11:30 igår" för att använda pulsslagsloggen för att hjälpa dig att fastställa rollens hälsostatus under den tiden.

Värdstövlarloggar

Värdstövlarloggen finns på C:\Resources\WaHostBootstrapper.log. Den innehåller poster för startuppgifter, inklusive plugin-program som cachelagring eller RDP (Remote Desktop Protocol). Loggen innehåller också hälsoavsökningar för värdprocessen som kör din rollinmatningsplatskod (den WebRole.cs kod som körs i WaIISHost.exe).

En loggfil genereras varje gång värdstövlaren startas om. (Med andra ord startas den om när din roll återvinns på grund av en händelse som krasch, återvinning, omstart av virtuell dator eller uppgradering.) Den här metoden gör loggen enkel att använda för att avgöra hur ofta eller när din roll återvanns.

Internet Information Services-loggar

IIS-loggarna (Internet Information Services) finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\LogFiles\Web. Dessa loggar används för standardfelsökning på både Azure-servrar och lokala servrar.

IIS-loggar förbises ofta i scenarier som "Min webbplats var nere från 10:00 till 11:30 igår." Det är naturligt att skylla på Azure för driftstoppet. ("Min webbplats fungerade bra i två veckor, så problemet måste vara Azure!") IIS-loggarna anger dock ofta något annat. Du kan upptäcka att ökade svarstider inträffade omedelbart före avbrottet. Eller så kanske du upptäcker att statuskoder som inte lyckades returneras av IIS. De här koderna skulle indikera ett problem som uppstod på själva webbplatsen (dvs. i den ASP.NET koden som körs i w3wp.exe) och inte i Azure.

Prestandaräknare

Om du vill visa prestandaräknare väljer du Start-menyn , söker efter perfmon och väljer sedan Prestandaövervakaren. Den här appen är en snapin-modul i Microsoft Management Console (MMC). Du kan också installera och konfigurera Windows Azure-diagnostiktillägg (WAD).

Prestandaräknare används för standardfelsökning på både Azure-servrar och lokala servrar. Om du konfigurerar WAD i förväg har du ofta värdefulla prestandaräknare för att felsöka problem som inträffat tidigare (till exempel "Min webbplats var nere från 10:00 till 11:30 igår.").

Förutom problem som du samlar in specifika prestandaräknare för är de vanligaste användningarna för prestandaräknare som samlas in av WAD att leta efter följande objekt i den angivna ordningen:

  1. Poster för regelbundna prestandaräknare

  2. En period utan poster

  3. Ett av tillstånden i följande tabell.

    Stat/län beskrivning
    Återuppta regelbundna poster Ett scenario där den virtuella datorn potentiellt inte hade körts
    100 procent cpu-användning En oändlig loop eller något annat logikproblem i själva webbplatsens kod

HTTP.SYS loggar

De HTTP.SYS loggarna finns i D:\Windows\System32\LogFiles\HTTPERR. Dessa loggar används för standardfelsökning på både Azure-servrar och lokala servrar.

Precis som för IIS-loggar förbises ofta de HTTP.SYS loggarna. De är dock viktiga när du försöker felsöka ett problem där en värdbaserad tjänstwebbplats inte svarar. Det här problemet beror ofta på att IIS inte kan bearbeta mängden begäranden som kommer in. Bevisen för den här orsaken visas vanligtvis i HTTP.SYS loggarna.

Loggfiler för IIS-misslyckade begäranden

Loggfilerna "IIS misslyckades med begäran" finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\FailedReqLogFiles. Dessa loggar används för standardfelsökning på både Azure-servrar och lokala servrar.

Loggfilerna är som standard inte aktiverade i Windows Azure. De används sällan. Men om du felsöker problem som är specifika för IIS eller ASP.NET bör du överväga att aktivera FREB-spårning (misslyckad buffring av begärandehändelse). FREB-spårning kan ge mer information om dessa problem.

Diagnostiktabeller och konfiguration för Windows Azure

Tabellerna och konfigurationen för Windows Azure-diagnostiktillägget (WAD) finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\Monitor. Dessa objekt representerar den lokala cachen på den virtuella datorn för WAD-data.

WAD vidtar följande steg:

  1. Samlar in data när du har konfigurerat dem.

  2. Lagrar data i anpassade .tsf-filer på den virtuella datorn.

  3. Överför data till lagring baserat på den schemalagda överföringsperiod som du angav.

Eftersom data är i ett anpassat .tsf-format är innehållet i WAD-data tyvärr av begränsad användning. Men de innehåller de diagnostikkonfigurationsfiler som är användbara för att felsöka problem om WAD inte fungerar korrekt. Leta efter en fil med namnet config.xml i mappen Konfiguration. Den här filen innehåller konfigurationsdata för WAD. Om WAD inte fungerar korrekt kontrollerar du att den här filen återspeglar det sätt som du förväntar dig att WAD ska konfigureras på.

Cachelagringsloggfiler för Windows Azure

Cachelagringsloggfilerna för Windows Azure finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\AzureCaching. Dessa loggar innehåller detaljerad information om rollbaserad cachelagring i Windows Azure. Loggarna kan hjälpa dig att felsöka problem där cachelagring inte fungerar som förväntat.

WaIISHost-loggar

WaIISHost-loggen finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\WaIISHost.log. Den innehåller information från WaIISHost.exe processen. Den här processen är den plats där din rollinmatningspunktskod (WebRole.cs) körs för WebRoles. Merparten av den här informationen ingår också i de andra loggarna som beskrivs i den här artikeln (till exempel Windows Azure-händelseloggarna). Du kan dock ibland hitta mer användbar information här.

IISConfigurator-loggar

IISConfigurator-loggen finns i C:\Resources\Directory\<DeploymentID>.<RoleName>. DiagnosticStore\IISConfigurator.log. Den innehåller information om IISConfigurator-processen. Den här processen används för att utföra den faktiska IIS-konfigurationen av din webbplats, baserat på den modell som du definierade i tjänstdefinitionsfilerna. Processen misslyckas sällan eller stöter på fel. Men om IIS eller w3wp.exe inte verkar vara korrekt konfigurerade för din tjänst är den här loggen platsen att kontrollera.

Rollkonfigurationsfiler

Rollkonfigurationsfilen finns i C:\Config\<DeploymentID>.<RoleName>.<Version>.xml. Den innehåller information om konfigurationen för din roll, till exempel följande:

  • Inställningar som definieras i filen ServiceConfiguration.cscfg

  • Lokala resurskataloger

  • IP-adresser och portar för dynamisk IP (DIP) och virtuell IP (VIP)

  • Tumavtryck för certifikat

  • Avsökningar för lastbalanserare

  • Andra instanser

Rollkonfigurationsfilen liknar rollmodelldefinitionsfilen eftersom den inte innehåller körningsgenererad information. Det kan dock vara användbart att se till att tjänsten är konfigurerad som förväntat.

Definitionsfil för rollmodell

Rollmodelldefinitionsfilen finns på E:\RoleModel.xml eller F:\RoleModel.xml. Den innehåller information om hur din tjänst definieras enligt Azure-körningen.

Filen innehåller poster för varje startuppgift och information om hur uppgiften körs, inklusive följande egenskaper:

  • Bakgrund
  • Miljövariabler
  • Plats

Du kan också se hur ditt <webbplatselement> definieras för en webbroll.

Rollmodelldefinitionsfilen innehåller inte körningsgenererad information, men den kan hjälpa dig att kontrollera att Azure kör din tjänst som förväntat. Den här verifieringen hjälper ofta när du har en viss version av en tjänstdefinition på utvecklingsdatorn, men bygg- och paketservern använder en annan version av tjänstdefinitionsfilerna.

Om ETL-filer

Mappen C:\Logs innehåller filerna RuntimeEvents_<Iteration.etl> och WaAppAgent_<Iteration.etl>. Dessa ETL-filer (Event Tracing for Windows) är spårningsfiler för Windows (ETW) som innehåller en kompilering av den information som finns i Windows Azure-händelseloggarna, gästagentloggarna och andra loggar. Filerna är en praktisk kompilering av de viktigaste loggdata på en virtuell Azure-dator. Eftersom filerna är i ETL-format måste du vidta några extra åtgärder för att använda informationen. Om du har ett favoritverktyg för ETW-visning kan du ignorera många av de nämnda loggfilerna. I stället kan du bara titta på informationen i dessa två ETL-filer.

Nästa steg

Mer information

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.