Dela via


Diagnostikdata för Windows Azure-plattform som en tjänst (PaaS)

När du behöver 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.

Den här artikeln beskriver 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 (frekvensen för att använda loggen 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:

  • Rollen startar och stoppar
  • Startåtgärder
  • OnStart starta och stoppa
  • OnRun Börja
  • Kraschar
  • Återvinner

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

  1. 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 rollinmatningspunktkod (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. Start-menyn söker du efter Loggboken och väljer sedan appen.

  2. Expandera Windows-loggar i navigeringsfönstret och välj sedan Program.

Körningsloggar för appagent

Appagentens körningslogg finns i C:\Logs\AppAgentRuntime.log och skrivs av WindowsAzureGuestAgent.exe körbara filen. 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:

  • Brandväggskonfiguration
  • Ä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 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 den hälsostatus som den här loggen rapporterar samma 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 vilket tillstånd som var vid något tidigare tillfälle. 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 hälsostatusen för rollen under den tiden.

Värdstövlarloggar

Värdstövlarloggen finns i C:\Resources\WaHostBootstrapper.log. Den innehåller poster för startåtgärder, inklusive plugin-program som cachelagring eller Remote Desktop Protocol (RDP). Loggen innehåller även hälsoavsökningar för värdprocessen som kör din rollstartpunktskod ( 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, till exempel en krasch, återanvändning, 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 avbrottet. ("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 returnerades av IIS. De här koderna indikerar ett problem som uppstod på själva webbplatsen (dvs. i ASP.NET kod 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 Diagnostics-tillägget (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 har inträffat tidigare (till exempel "Min webbplats var nere från 10:00 till 11:30 igår.").

Bortsett från problem som du samlar in specifika prestandaräknare för är de vanligaste användningsområdena 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.

    Tillstånd Beskrivning
    Återupptagandet av 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.

Som är sant 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 misslyckade IIS-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 (händelsebuffertning av misslyckade begäranden). FREB-spårning kan ge mer information om dessa problem.

Windows Azure-diagnostiktabeller och -konfiguration

Tabellerna och konfigurationen för Windows Azure Diagnostics-tillä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 utför 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.xmli mappen Konfiguration. Den här filen innehåller konfigurationsdata för WAD. Om WAD inte fungerar korrekt kontrollerar du den här filen för att se till att den återspeglar det sätt som du förväntar dig att WAD ska konfigureras på.

Loggfiler för Cachelagring i Windows Azure

Loggfilerna för Cachelagring i 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 rollinmatningspunktkod (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ändelseloggar). Ibland kan du dock 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 för din webbplats, baserat på den modell som du definierade i tjänstdefinitionsfilerna. Processen misslyckas sällan eller påträffar fel. Men om IIS eller w3wp.exe inte verkar vara korrekt konfigurerade för din tjänst är den här loggen rätt plats 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 startaktivitet och information om hur aktiviteten körs, inklusive följande egenskaper:

  • Bakgrund
  • Miljövariabler
  • Plats

Du kan också se hur platselementet<> 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 (Händelsespårning för Windows) innehåller en kompilering av informationen som finns i Windows Azure-händelseloggar, gästagentloggar 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.