Problemen met een app in Azure App Service oplossen met Visual Studio
Overzicht
Deze zelfstudie laat zien hoe u Visual Studio-hulpprogramma's kunt gebruiken om fouten in een app op te sporen in App Service,door op afstand uit te werken in de foutopsporingsmodus of door toepassingslogboeken en webserverlogboeken te bekijken.
U leert het volgende:
- Welke app-beheerfuncties beschikbaar zijn in Visual Studio.
- Het gebruik van Visual Studio externe weergave om snelle wijzigingen aan te brengen in een externe app.
- Hoe u de foutopsporingsmodus op afstand kunt uitvoeren terwijl een project wordt uitgevoerd in Azure, zowel voor een app als voor een webjob.
- Traceerlogboeken voor toepassingen maken en weergeven terwijl de toepassing ze maakt.
- Webserverlogboeken weergeven, inclusief gedetailleerde foutberichten en tracering van mislukte aanvragen.
- Diagnostische logboeken verzenden naar een Azure Storage account en deze daar weergeven.
Als u een Visual Studio Ultimate hebt, kunt u IntelliTrace ook gebruiken voor het debuggen. IntelliTrace wordt niet behandeld in deze zelfstudie.
Vereisten
Deze zelfstudie werkt met de ontwikkelomgeving, het webproject en de App Service-app die u hebt ingesteld in Een ASP.NET-app maken in Azure App Service. Voor de secties WebJobs hebt u de toepassing nodig die u in Aan de slag met de Azure WebJobs SDK.
De codevoorbeelden die in deze zelfstudie worden weergegeven, zijn voor een C# MVC-webtoepassing, maar de procedures voor probleemoplossing zijn hetzelfde voor Visual Basic en Web Forms toepassingen.
In deze zelfstudie wordt ervan uit Visual Studio 2019 gebruikt.
De functie voor streaminglogboeken werkt alleen voor toepassingen die zijn .NET Framework 4 of hoger.
App-configuratie en -beheer
Visual Studio biedt toegang tot een subset van de app-beheerfuncties en configuratie-instellingen die beschikbaar zijn in Azure Portal. In deze sectie ziet u wat er beschikbaar is met behulp van Server Explorer. Als u de nieuwste functies van Azure-integratie wilt zien, kunt u Cloud Explorer ook uitproberen. U kunt beide vensters openen vanuit het menu Weergave.
Als u nog niet bent aangemeld bij Azure in Visual Studio, klikt u met de rechtermuisknop op Azure en selecteert u Verbinding maken in Microsoft Azure abonnement Server Explorer.
U kunt ook een beheercertificaat installeren dat toegang tot uw account mogelijk maakt. Als u ervoor kiest om een certificaat te installeren, klikt u met de rechtermuisknop op het Azure-knooppunt in Server Explorer en selecteert u vervolgens Abonnementen beheren en filteren in het contextmenu. Klik in het dialoogvenster Microsoft Azure-abonnementen beheren op het tabblad Certificaten en klik vervolgens op Importeren. Volg de aanwijzingen om een abonnementsbestand (ook wel een .publishsettings-bestand genoemd) voor uw Azure-account te downloaden en vervolgens te importeren.
Notitie
Als u een abonnementsbestand downloadt, sla het dan op in een map buiten uw broncodemappen (bijvoorbeeld in de map Downloads) en verwijder het nadat het importeren is voltooid. Een kwaadwillende gebruiker die toegang krijgt tot het abonnementsbestand kan uw Azure-services bewerken, maken en verwijderen.
Zie Azure-rollen toewijzen met behulp van de Azure Portal voor meer informatie over het maken van verbinding met Azure-resources Visual Studio.
Vouw in Server Explorer Azure uit en vouw App Service.
Vouw de resourcegroep uit die de app bevat die u hebt gemaakt in Een ASP.NET-app maken in Azure App Service,klik met de rechtermuisknop op het app-knooppunt en klik op Instellingen.

Het tabblad Azure-web-app wordt weergegeven. Hier ziet u de app-beheer- en configuratietaken die beschikbaar zijn in Visual Studio.

In deze zelfstudie gebruikt u de vervolgkeuzeopties voor logboekregistratie en tracering. U gebruikt ook externe debugging, maar u gebruikt een andere methode om dit in te stellen.
Zie voor informatie over de vakken App Instellingen en Verbindingsreeksen in dit venster Azure App Service: Hoetoepassingsreeksen en verbindingsreeksen werken.
Als u een app-beheertaak wilt uitvoeren die niet in dit venster kan worden uitgevoerd, klikt u op Openen in Beheerportal om een browservenster te openen voor de Azure Portal.
Toegang tot app-bestanden in Server Explorer
Meestal implementeert u een webproject met de vlag in het Web.config-bestand ingesteld op of , wat betekent dat er geen handig foutbericht wordt weergegeven wanneer er iets customErrors On RemoteOnly misgaat. Voor veel fouten krijgt u alleen een pagina zoals een van de volgende:
Serverfout in '/'-toepassing:
Er is een fout opgetreden:
De website kan de pagina niet weergeven
De eenvoudigste manier om de oorzaak van de fout te vinden, is door gedetailleerde foutberichten in te stellen. In de eerste van de voorgaande schermopnamen wordt uitgelegd hoe dit moet. Hiervoor is een wijziging in het geïmplementeerde Web.config vereist. U kunt het Web.config-bestand bewerken in het project en het Web.config project opnieuw implementeren, of een transformatie maken en een foutopsporings build implementeren, maar er is een snellere manier: in Solution Explorer kunt u bestanden rechtstreeks weergeven en bewerken in de externe app met behulp van de functie externe weergave.
Vouw in Server Explorer Azure uit, vouw App Service uit, vouw de resourcegroep uit waarin uw app zich bevindt en vouw vervolgens het knooppunt voor uw app uit.
U ziet knooppunten die u toegang geven tot de inhoudsbestanden en logboekbestanden van de app.
Vouw het knooppunt Bestanden uit en dubbelklik op het Web.config bestand.

Visual Studio opent het Web.config van de externe app en geeft [Remote] weer naast de bestandsnaam in de titelbalk.
Voeg de volgende regel toe aan het
system.webelement :<customErrors mode="Off"></customErrors>
Vernieuw de browser waarin het foutbericht niet wordt weergegeven en u krijgt nu een gedetailleerd foutbericht, zoals in het volgende voorbeeld:

(De weergegeven fout is gemaakt door de in rood weergegeven regel toe te voegen aan Views\Home\Index.cshtml.)
Het bewerken Web.config bestand is slechts één voorbeeld van scenario's waarin de mogelijkheid om bestanden op uw app te lezen en te bewerken App Service eenvoudiger maakt.
Apps voor externe debuggen
Als het gedetailleerde foutbericht onvoldoende informatie biedt en u de fout niet lokaal opnieuw kunt maken, kunt u het probleem ook oplossen door op afstand in de foutopsporingsmodus uit te voeren. U kunt onderbrekingspunten instellen, geheugen rechtstreeks bewerken, code stapsgewijs doorseen en zelfs het codepad wijzigen.
Externebuggen werkt niet in Express-edities van Visual Studio.
In deze sectie ziet u hoe u op afstand fouten opsport met behulp van het project dat u maakt in Een ASP.NET-app maken in Azure App Service.
Open het webproject dat u hebt gemaakt in Een ASP.NET app maken in Azure App Service.
Open Controllers\HomeController.cs.
Verwijder de
About()methode en voeg de volgende code in de plaats in.public ActionResult About() { string currentTime = DateTime.Now.ToLongTimeString(); ViewBag.Message = "The current time is " + currentTime; return View(); }Stel een onderbrekingspunt in op de
ViewBag.Messageregel.Klik Solution Explorer met de rechtermuisknop op het project en klik op Publiceren.
Selecteer in de vervolgkeuzelijst Profiel hetzelfde profiel dat u hebt gebruikt in Een app ASP.NET maken in Azure App Service. Klik vervolgens op Instellingen.
Klik in het dialoogvenster Publiceren op het tabblad Instellingen en wijzig configuratie in Fouten opsporen en klik vervolgens op Opslaan.

Klik op Publish. Nadat de implementatie is uitgevoerd en uw browser wordt geopend met de Azure-URL van uw app, sluit u de browser.
Klik Server Explorer met de rechtermuisknop op uw app en klik vervolgens op Attach Debugger.
De browser wordt automatisch geopend op de startpagina die wordt uitgevoerd in Azure. Mogelijk moet u ongeveer 20 seconden wachten terwijl Azure de server in stelt voor debuggen. Deze vertraging vindt alleen plaats wanneer u in de foutopsporingsmodus voor een app in een periode van 48 uur wordt uitgevoerd. Wanneer u in dezelfde periode opnieuw begint met de probleemopsporing, is er geen vertraging.
Notitie
Als u problemen hebt met het starten van het debugger, probeert u dit te doen met Behulp van Cloud Explorer in plaats van Server Explorer.
Klik op Over in het menu.
Visual Studio stopt op het onderbrekingspunt en de code wordt uitgevoerd in Azure, niet op uw lokale computer.
Beweeg de
currentTimemuisaanwijzer over de variabele om de tijdwaarde te bekijken.
De tijd die u ziet, is de Azure-servertijd, die zich mogelijk in een andere tijdzone bevindt dan uw lokale computer.
Voer een nieuwe waarde in voor
currentTimede variabele, zoals 'Nu wordt uitgevoerd in Azure'.Druk op F5 om door te gaan met uitvoeren.
Op de pagina Over die wordt uitgevoerd in Azure wordt de nieuwe waarde weergegeven die u hebt ingevoerd in de variabele currentTime.

WebJobs voor externe debuggen
In deze sectie ziet u hoe u op afstand fouten opsport met behulp van het project en de app die u in Aan de slag met de Azure WebJobs SDK.
De functies die in deze sectie worden weergegeven, zijn alleen beschikbaar in Visual Studio 2013 met Update 4 of hoger.
Externe debugging werkt alleen met continue webjobs. Geplande en on-demand webjobs bieden geen ondersteuning voor debuggen.
Open het webproject dat u hebt gemaakt in Aan de slag met Azure WebJobs SDK.
Open functions.cs in het project ContosoAdsWebJob.
Stel een onderbrekingspunt in voor de eerste instructie in de
GnerateThumbnailmethode .
Klik Solution Explorer met de rechtermuisknop op het webproject (niet op het WebJob-project) en klik op Publish.
Selecteer in de vervolgkeuzelijst Profiel hetzelfde profiel dat u hebt gebruikt in Aan de slag met Azure WebJobs SDK.
Klik op Instellingen en wijzig Configuratie in Fouten opsporen en klik vervolgens op Publiceren.
Visual Studio implementeert de web- en webjobprojecten en wordt uw browser geopend met de Azure-URL van uw app.
Vouw in Server Explorer Azure > App Service > uw resourcegroep > uw app > WebJobs > Continuous uit en klik vervolgens met de rechtermuisknop op ContosoAdsWebJob.
Klik op Attach Debugger.
De browser wordt automatisch geopend op de startpagina die wordt uitgevoerd in Azure. Mogelijk moet u ongeveer 20 seconden wachten terwijl Azure de server in stelt voor het uitvoeren van debuggen. Deze vertraging vindt alleen plaats wanneer u voor het eerst in de foutopsporingsmodus in een app in een periode van 48 uur wordt uitgevoerd. Wanneer u debuggen opnieuw in dezelfde periode start, is er geen vertraging.
Maak een nieuwe advertentie in de webbrowser die wordt geopend voor de startpagina van Contoso Ads.
Als u een advertentie maakt, wordt er een wachtrijbericht gemaakt dat door de webjob wordt opgehaald en verwerkt. Wanneer de WebJobs SDK de functie aanroept om het wachtrijbericht te verwerken, raakt de code uw onderbrekingspunt.
Wanneer het debugger op uw onderbrekingspunt wordt breekt, kunt u variabele waarden onderzoeken en wijzigen terwijl het programma de cloud wordt uitgevoerd. In de volgende afbeelding toont het debugger de inhoud van het blobInfo-object dat is doorgegeven aan de
GenerateThumbnailmethode .
Druk op F5 om door te gaan met uitvoeren.
De
GenerateThumbnailmethode is klaar met het maken van de miniatuur.Vernieuw de indexpagina in de browser en u ziet de miniatuur.
Druk Visual Studio shift+F5 om debuggen te stoppen.
Klik Server Explorer met de rechtermuisknop op het knooppunt ContosoAdsWebJob en klik op Dashboard weergeven.
Meld u aan met uw Azure-referenties en klik vervolgens op de naam van de webjob om naar de pagina voor uw webjob te gaan.

In het dashboard ziet u dat de
GenerateThumbnailfunctie onlangs is uitgevoerd.(De volgende keer dat u op Dashboard weergeven klikt, hoeft u zich niet aan te melden en gaat de browser rechtstreeks naar de pagina voor uw webjob.)
Klik op de naam van de functie voor meer informatie over de uitvoering van de functie.

Als uw functie logboeken heeft geschreven,kunt u op ToggleOutput klikken om deze weer te geven.
Opmerkingen over foutopsporing op afstand
Uitvoeren in de foutopsporingsmodus in productie wordt niet aanbevolen. Als uw productie-app niet is geschaald naar meerdere server-exemplaren, voorkomt u dat de webserver reageert op andere aanvragen. Als u meerdere exemplaren van de webserver hebt en u aan het debugger koppelt, krijgt u een willekeurig exemplaar en kunt u er niet voor zorgen dat volgende browseraanvragen naar hetzelfde exemplaar gaan. Bovendien implementeert u doorgaans geen build voor foutopsporing naar productie, en met compileroptimalisaties voor release-builds is het mogelijk niet mogelijk om regel voor regel in uw broncode weer te geven wat er gebeurt. Voor het oplossen van productieproblemen is toepassingstracering en webserverlogboeken de beste resource.
Vermijd lange stops bij onderbrekingspunten bij externe foutenopsporing. Azure behandelt een proces dat langer dan een paar minuten wordt gestopt als een niet-reagerend proces en sluit het af.
Tijdens het debuggen stuurt de server gegevens naar Visual Studio, wat invloed kan hebben op de bandbreedtekosten. Zie Prijzen voor Azure voor meer informatie over bandbreedtesnelheden.
Zorg ervoor dat het
debugkenmerk van het element in hetcompilationWeb.config is ingesteld op true. Deze is standaard ingesteld op true wanneer u een buildconfiguratie voor foutopsporing publiceert.<system.web> <compilation debug="true" targetFramework="4.5" /> <httpRuntime targetFramework="4.5" /> </system.web>Als u ziet dat het foutopsporingsygger niet in de code komt die u wilt opsporen, moet u mogelijk de instelling Just My Code foutopsporing. Zie Specify whether to debug only user code using Just My Code in Visual Studiovoor meer informatie.
Er wordt een timer op de server gestart wanneer u de functie voor externe debuggen inschakelen. Na 48 uur wordt de functie automatisch uitgeschakeld. Deze limiet van 48 uur wordt uitgevoerd om veiligheids- en prestatieredenen. U kunt de functie eenvoudig zo vaak weer in-/uit zetten als u wilt. We raden u aan deze uitgeschakeld te laten wanneer u niet actief debuggen bent.
U kunt het debugger handmatig koppelen aan elk proces, niet alleen aan het app-proces (w3wp.exe). Zie Foutopsporing in Visual Studio voor meer informatie over het gebruik van de foutopsporingsmodus in Visual Studio.
Overzicht van diagnostische logboeken
Een ASP.NET die wordt uitgevoerd in een App Service-app kan de volgende soorten logboeken maken:
- Logboeken voor toepassingstracing
De toepassing maakt deze logboeken door methoden van de klasse System.Diagnostics.Trace aan te roepen. - Webserverlogboeken
De webserver maakt een logboekinvoer voor elke HTTP-aanvraag voor de app. - Gedetailleerde logboeken voor foutmeldingen
De webserver maakt een HTML-pagina met aanvullende informatie voor mislukte HTTP-aanvragen (aanvragen die resulteren in statuscode 400 of hoger). - Logboeken voor tracering van mislukte aanvragen
De webserver maakt een XML-bestand met gedetailleerde traceringsinformatie voor mislukte HTTP-aanvragen. De webserver biedt ook een XSL-bestand om de XML in een browser op te maken.
Logboekregistratie is van invloed op de prestaties van apps, zodat u in Azure elk type logboek naar behoefte kunt in- of uitschakelen. Voor toepassingslogboeken kunt u opgeven dat alleen logboeken boven een bepaald ernstniveau moeten worden geschreven. Wanneer u een nieuwe app maakt, wordt standaard alle logboekregistratie uitgeschakeld.
Logboeken worden geschreven naar bestanden in een Map LogFiles in het bestandssysteem van uw app en zijn toegankelijk via FTP. Webserverlogboeken en toepassingslogboeken kunnen ook naar een Azure Storage worden geschreven. U kunt een groter volume aan logboeken in een opslagaccount behouden dan mogelijk is in het bestandssysteem. U bent beperkt tot maximaal 100 MB aan logboeken wanneer u het bestandssysteem gebruikt. (Bestandssysteemlogboeken zijn alleen voor kortetermijnretentie. Azure verwijdert oude logboekbestanden om ruimte te maken voor nieuwe logboeken nadat de limiet is bereikt.)
Toepassings traceerlogboeken maken en weergeven
In deze sectie gaat u de volgende taken uitvoeren:
- Voeg tracerings instructies toe aan het webproject dat u hebt gemaakt in Aan de slag met Azure en ASP.NET.
- Bekijk de logboeken wanneer u het project lokaal hebt uitgevoerd.
- Bekijk de logboeken zoals ze worden gegenereerd door de toepassing die wordt uitgevoerd in Azure.
Zie How to work with Azure queue storage using the WebJobs SDK - How to write logs(Werken met Azure Queue Storage met behulp van de WebJobs SDK - Logboeken schrijven) voor meer informatie over het maken van toepassingslogboeken in WebJobs. De volgende instructies voor het weergeven van logboeken en het beheren van hoe ze worden opgeslagen in Azure zijn ook van toepassing op toepassingslogboeken die zijn gemaakt door WebJobs.
Tracerings instructies toevoegen aan de toepassing
Open Controllers\HomeController.cs en vervang de methoden , en door de volgende code om -instructies en een -instructie voor toe
IndexteAboutContactTraceusingSystem.Diagnosticsvoegen:public ActionResult Index() { Trace.WriteLine("Entering Index method"); ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application."; Trace.TraceInformation("Displaying the Index page at " + DateTime.Now.ToLongTimeString()); Trace.WriteLine("Leaving Index method"); return View(); } public ActionResult About() { Trace.WriteLine("Entering About method"); ViewBag.Message = "Your app description page."; Trace.TraceWarning("Transient error on the About page at " + DateTime.Now.ToShortTimeString()); Trace.WriteLine("Leaving About method"); return View(); } public ActionResult Contact() { Trace.WriteLine("Entering Contact method"); ViewBag.Message = "Your contact page."; Trace.TraceError("Fatal error on the Contact page at " + DateTime.Now.ToLongTimeString()); Trace.WriteLine("Leaving Contact method"); return View(); }Voeg bovenaan
using System.Diagnostics;het bestand een -instructie toe.
De traceringsuitvoer lokaal weergeven
Druk op F5 om de toepassing uit te voeren in de foutopsporingsmodus.
De standaard traceerlistener schrijft alle traceeruitvoer naar het uitvoervenster, samen met andere foutopsporingsuitvoer. In de volgende afbeelding ziet u de uitvoer van de traceer-instructies die u aan de methode hebt
Indextoegevoegd.
De volgende stappen laten zien hoe u traceeruitvoer op een webpagina kunt weergeven, zonder compileren in de foutopsporingsmodus.
Open het toepassingsbestand Web.config (het bestand dat zich in de projectmap bevindt) en voeg een -element toe aan het einde van het bestand net vóór
<system.diagnostics>het afsluitende</configuration>element:<system.diagnostics> <trace> <listeners> <add name="WebPageTraceListener" type="System.Web.WebPageTraceListener, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </listeners> </trace> </system.diagnostics>
Met WebPageTraceListener kunt u traceeruitvoer weergeven door naar te /trace.axd bladeren.
Voeg een traceerelement toe
<system.web>onder in Web.config bestand, zoals in het volgende voorbeeld:<trace enabled="true" writeToDiagnosticsTrace="true" mostRecent="true" pageOutput="false" />Druk op CTRL + F5 om de toepassing uit te voeren.
Voeg in de adresbalk van het browservenster trace.axd toe aan de URL en druk vervolgens op Enter (de URL is vergelijkbaar met
http://localhost:53370/trace.axd).Klik op de pagina Toepassings trace op Details weergeven op de eerste regel (niet op de regel BrowserLink).
De pagina Aanvraagdetails wordt weergegeven en in de sectie Trace information ziet u de uitvoer van de traceer-instructies die u aan de methode hebt
Indextoegevoegd.
Is standaard
trace.axdalleen lokaal beschikbaar. Als u het beschikbaar wilt maken vanuit een externe app, kunt u toevoegen aan het element in hetlocalOnly="false"traceWeb.config-bestand, zoals wordt weergegeven in het volgende voorbeeld:<trace enabled="true" writeToDiagnosticsTrace="true" localOnly="false" mostRecent="true" pageOutput="false" />Het inschakelen
trace.axdin een productie-app wordt echter uit veiligheidsoverwegingen niet aanbevolen. In de volgende secties ziet u een eenvoudigere manier om traceringslogboeken in een App Service lezen.
De traceringsuitvoer in Azure weergeven
Klik Solution Explorer met de rechtermuisknop op het webproject en klik op Publish.
Klik in het dialoogvenster Publiceren op Publiceren.
Nadat Visual Studio update hebt gepubliceerd, wordt er een browservenster naar uw startpagina geopend (ervan uitgaande dat u doel-URL niet hebt gew clear op het tabblad Verbinding).
Klik Server Explorer met de rechtermuisknop op uw app en selecteer Streaminglogboeken weergeven.
In het venster Uitvoer ziet u dat u bent verbonden met de service voor logboekstreaming en wordt elke minuut een meldingsregel toegevoegd die zonder logboek wordt weergegeven.
Klik in het browservenster met de startpagina van uw toepassing op Contact opnemen.
Binnen een paar seconden wordt de uitvoer van de traceer op foutniveau die u aan de methode hebt toegevoegd,
Contactweergegeven in het venster Uitvoer.
Visual Studio worden alleen traceringen op foutniveau weergegeven, omdat dit de standaardinstelling is wanneer u de logboekbewakingsservice inschakelen. Wanneer u een nieuwe App Service app maakt, wordt alle logboekregistratie standaard uitgeschakeld, zoals u hebt gezien toen u de instellingenpagina eerder hebt geopend:

Wanneer u echter Streaminglogboeken weergeven hebt geselecteerd, Visual Studio Application Logging (Bestandssysteem) automatisch gewijzigd in Fout, wat betekent dat logboeken op foutniveau worden gerapporteerd. Als u al uw traceringslogboeken wilt zien, kunt u deze instelling wijzigen in Uitgebreid. Wanneer u een ernstniveau lager dan fout selecteert, worden ook alle logboeken met een hogere ernst gerapporteerd. Wanneer u dus uitgebreid selecteert, ziet u ook informatie-, waarschuwings- en foutlogboeken.
Klik Server Explorer met de rechtermuisknop op de app en klik vervolgens op Weergave Instellingen zoals u eerder hebt gedaan.
Wijzig Application Logging (Bestandssysteem) in Uitgebreid en klik vervolgens op Opslaan.

Klik in het browservenster waarop nu de pagina Contactpersoon wordt weergegeven op Start, klik vervolgens op Over en klik vervolgens op Contact opnemen.
Binnen een paar seconden wordt in het venster Uitvoer al uw traceringsuitvoer weergegeven.

In deze sectie hebt u logboekregistratie ingeschakeld en uitgeschakeld met behulp van app-instellingen. U kunt traceerlisteners ook in- en uitschakelen door het Web.config wijzigen. Het wijzigen van het Web.config zorgt er echter voor dat het app-domein wordt gerecycled, terwijl het inschakelen van logboekregistratie via de app-configuratie dat niet doet. Als het probleem lang duurt om het probleem te reproduceren of af en toe plaatsvindt, kan het app-domein worden 'opgelost' en moet u wachten tot het opnieuw gebeurt. Als u diagnostische gegevens in Azure inschakelen, kunt u direct beginnen met het vastleggen van foutgegevens zonder dat het app-domein opnieuw wordt gebruikt.
Functies van het uitvoervenster
Het Microsoft Azure logboeken van het uitvoervenster bevat verschillende knoppen en een tekstvak:
Deze voeren de volgende functies uit:
- Leeg het venster Uitvoer.
- Tekstte terugloop in- of uitschakelen.
- Bewakingslogboeken starten of stoppen.
- Geef op welke logboeken moeten worden bewaakt.
- Logboeken downloaden.
- Filter logboeken op basis van een zoekreeks of een reguliere expressie.
- Sluit het venster Uitvoer.
Als u een zoekreeks of reguliere expressie op typt, Visual Studio logboekregistratiegegevens op de client gefilterd. Dit betekent dat u de criteria kunt invoeren nadat de logboeken worden weergegeven in het venster Uitvoer en dat u filtercriteria kunt wijzigen zonder dat u de logboeken opnieuw moet maken.
Webserverlogboeken weergeven
Webserverlogboeken registreren alle HTTP-activiteiten voor de app. Als u ze wilt zien in het venster Uitvoer, moet u ze inschakelen voor de app en Visual Studio u ze wilt bewaken.
Wijzig op het tabblad Azure Web App Configuration dat u hebt geopend Server Explorer webserverlogregistratie in Aan en klik vervolgens op Opslaan.

Klik in het uitvoervenster op de knop Opgeven Microsoft Azure logboeken wilt bewaken.

Selecteer in Microsoft Azure logboekregistratieopties de optie Webserverlogboeken en klik vervolgens op OK.

Klik in het browservenster waarin de app wordt weergegeven op Start, klik vervolgens op Over en klik vervolgens op Contact opnemen.
De toepassingslogboeken worden doorgaans eerst weergegeven, gevolgd door de webserverlogboeken. Mogelijk moet u even wachten totdat de logboeken worden weergegeven.

Wanneer u webserverlogboeken voor het eerst inschakelen met behulp van Visual Studio, schrijft Azure de logboeken standaard naar het bestandssysteem. Als alternatief kunt u de Azure Portal om op te geven dat webserverlogboeken moeten worden geschreven naar een blobcontainer in een opslagaccount.
Als u de portal gebruikt om logboekregistratie van webservers naar een Azure-opslagaccount in te schakelen en vervolgens logboekregistratie in Visual Studio uit te schakelen, worden uw opslagaccountinstellingen hersteld wanneer u de logboekregistratie opnieuw in Visual Studio.
Gedetailleerde logboeken met foutmeldingen weergeven
Gedetailleerde foutenlogboeken bevatten aanvullende informatie over HTTP-aanvragen die resulteren in foutreactiecodes (400 of hoger). Als u ze wilt zien in het venster Uitvoer, moet u ze inschakelen voor de app en Visual Studio dat u ze wilt bewaken.
Wijzig op het tabblad Azure Web App Configuration dat u hebt geopend vanuit Server Explorer gedetailleerde foutberichten in Aan en klik vervolgens op Opslaan.

Klik in het uitvoervenster op de knop Opgeven Microsoft Azure logboeken wilt bewaken.
Klik in Microsoft Azure dialoogvenster Logboekregistratieopties op Alle logboeken en klik vervolgens op OK.

Voeg in de adresbalk van het browservenster een extra teken toe aan de URL om een 404-fout te veroorzaken (bijvoorbeeld
http://localhost:53370/Home/Contactx) en druk op Enter.Na enkele seconden wordt het gedetailleerde foutenlogboek weergegeven in Visual Studio uitvoervenster.

Beheer en klik op de koppeling om de logboekuitvoer in een browser weer te geven:

Bestandssysteemlogboeken downloaden
Alle logboeken die u in het venster Uitvoer kunt controleren, kunnen ook worden gedownload als .zip bestand.
Klik in het venster Uitvoer op Streaminglogboeken downloaden.
Bestandenverkenner wordt geopend in de map Downloads met het gedownloade bestand geselecteerd.
Extraheren .zip bestand en u ziet de volgende mapstructuur:
Logboeken voor toepassingstrac.txt in de map LogFiles\Application.
Webserverlogboeken bevinden zich in .log-bestanden in de map LogFiles\http\RawLogs. U kunt een hulpprogramma zoals Log Parser gebruiken om deze bestanden te bekijken en te bewerken.
Gedetailleerde foutberichtlogboeken bevinden zich in .html bestanden in de map LogFiles\DetailedErrors.
(De map deployments is voor bestanden die zijn gemaakt door publicatie van broncodebeheer. De map heeft niets te maken met Visual Studio publiceren. De Git-map is voor traceringen die betrekking hebben op het publiceren van broncodebeheer en de streamingservice voor logboekbestanden.)
Logboeken voor het traceren van mislukte aanvragen weergeven
Logboeken voor het traceren van mislukte aanvragen zijn handig als u inzicht wilt krijgen in de manier waarop IIS een HTTP-aanvraag afhandelt, in scenario's zoals het herschrijven van URL's of verificatieproblemen.
App Service-apps gebruiken dezelfde functionaliteit voor het traceren van mislukte aanvragen die beschikbaar was met IIS 7.0 en hoger. U hebt echter geen toegang tot de IIS-instellingen waarmee wordt geconfigureerd welke fouten worden geregistreerd. Wanneer u tracering van mislukte aanvragen inschakelen, worden alle fouten vastgelegd.
U kunt tracering van mislukte aanvragen inschakelen met behulp Visual Studio, maar u kunt ze niet weergeven in Visual Studio. Deze logboeken zijn XML-bestanden. De streaminglogboekservice bewaakt alleen bestanden die in de modus tekst zonder tekst kunnen worden gelezen:.txt, .html en .log-bestanden.
U kunt logboeken voor het traceren van mislukte aanvragen rechtstreeks via FTP of lokaal weergeven in een browser nadat u een FTP-hulpprogramma hebt gebruikt om ze naar uw lokale computer te downloaden. In deze sectie bekijkt u deze rechtstreeks in een browser.
Wijzig op het tabblad Configuratie van het azure-web-app-venster dat u hebt geopend Server Explorer, de tracering van mislukte aanvragen in Aan en klik vervolgens op Opslaan.

Voeg in de adresbalk van het browservenster met de app een extra teken toe aan de URL en klik op Enter om een 404-fout te veroorzaken.
Dit zorgt ervoor dat een logboek voor tracering van mislukte aanvragen wordt gemaakt en de volgende stappen laten zien hoe u het logboek kunt weergeven of downloaden.
Klik Visual Studio in het tabblad Configuratie van het venster Azure-web-app op Openen in Beheerportal.
Klik op Azure Portal Instellingen app op Implementatiereferenties en voer een nieuwe gebruikersnaam en een nieuw wachtwoord in.

Notitie
Wanneer u zich aanmeldt, moet u de volledige gebruikersnaam gebruiken met de app-naam als voorvoegsel. Als u bijvoorbeeld 'myid' als gebruikersnaam op geeft en de site 'myexample' is, moet u zich aanmelden als 'myexample\myid'.
Ga in een nieuw browservenster naar de URL die wordt weergegeven onder FTP-hostnaam of FTPS-hostnaam op de pagina Overzicht voor uw app.
Meld u aan met de FTP-referenties die u eerder hebt gemaakt (inclusief het voorvoegsel van de app-naam voor de gebruikersnaam).
In de browser wordt de hoofdmap van de app weergegeven.
Open de map LogFiles.

Open de map met de naam W3SVC plus een numerieke waarde.

De map bevat XML-bestanden voor fouten die zijn vastgelegd nadat u tracering van mislukte aanvragen hebt ingeschakeld, en een XSL-bestand dat een browser kan gebruiken om de XML op te maken.

Klik op het XML-bestand voor de mislukte aanvraag voor wie u traceringsgegevens wilt bekijken.
In de volgende afbeelding ziet u een deel van de traceringsinformatie voor een voorbeeldfout.

Volgende stappen
U hebt gezien hoe u Visual Studio logboeken die door een app zijn gemaakt, eenvoudig App Service weergeven. De volgende secties bieden koppelingen naar meer resources over verwante onderwerpen:
- App Service oplossen
- Debuggging in Visual Studio
- Externe debugging in Azure
- Tracering in ASP.NET toepassingen
- Webserverlogboeken analyseren
- Logboeken voor het traceren van mislukte aanvragen analyseren
- Debugging Cloud Services
App Service oplossen
Zie de volgende bronnen voor meer informatie over het oplossen van problemen met apps in Azure App Service:
- Apps controleren
- Geheugenlekken onderzoeken in Azure App Service met Visual Studio 2013. Microsoft ALM-blogbericht over Visual Studio functies voor het analyseren van problemen met beheerd geheugen.
- Azure App Service onlinehulpprogramma's die u moet kennen over. Blogbericht van Amit Apple.
Voor hulp bij een specifieke probleemoplossingsvraag start u een thread in een van de volgende forums:
Debuggging in Visual Studio
Zie Foutopsporing in Visual Studio en Foutopsporing Tips met Visual Studio 2010voor meer informatie over het gebruik van de foutopsporingsmodus in Visual Studio.
Externe debugging in Azure
Zie de volgende bronnen voor meer informatie over externe App Service voor apps en webjobs:
- Inleiding tot remote debugging Azure App Service.
- Inleiding tot externe debugging Azure App Service deel 2 - Binnen externe debugging
- Inleiding tot externe debugging op Azure App Service deel 3 - Omgeving met meerdere exemplaren en GIT
- WebJobs Debugging (video)
Als uw app gebruikmaakt van een Azure-web-API of Mobile Services-back-end en u fouten moet opsporen, gaat u naar Foutopsporing voor .NET-back-end in Visual Studio.
Tracering in ASP.NET toepassingen
Er zijn geen grondige en up-to-date inleidingen tot ASP.NET tracering beschikbaar op internet. Het beste is om aan de slag te gaan met oude inleidende materialen die zijn geschreven voor Web Forms omdat MVC nog niet bestaat, en dat aan te vullen met nieuwere blogberichten die gericht zijn op specifieke problemen. Enkele goede plaatsen om te beginnen zijn de volgende resources:
Bewaking en telemetrie (Real-World Cloud Apps bouwen met Azure).
E-book hoofdstuk met aanbevelingen voor tracering in Azure-cloudtoepassingen.ASP.NET Tracering
Oud, maar nog steeds een goede bron voor een eenvoudige inleiding tot het onderwerp.Traceerlisteners
Informatie over traceerlisteners, maar de WebPageTraceListener wordt niet vermeld.Walkthrough: Integratie van ASP.NET tracering met System.Diagnostics Tracing
Dit artikel is ook oud, maar bevat aanvullende informatie die niet wordt beschreven in het inleidende artikel.Tracering in ASP.NET MVC Razor-weergaven
Naast tracering in Razor-weergaven wordt in het bericht ook uitgelegd hoe u een foutfilter maakt om alle onverwerkte uitzonderingen in een MVC-toepassing te kunnen inloggen. Zie het voorbeeld Global.asax in Complete Example for Error Handlers on MSDN (Volledig voorbeeld voor fout-handlers op MSDN) voor informatie over het logboeken van alle niet-verwerkte uitzonderingen in een Web Forms-toepassing. Als u in MVC of Web Forms bepaalde uitzonderingen wilt inloggen, maar de standaardafhandeling van het framework voor deze uitzonderingen van kracht wilt laten worden, kunt u ze ondervangen en opnieuw laten werken, zoals in het volgende voorbeeld:try { // Your code that might cause an exception to be thrown. } catch (Exception ex) { Trace.TraceError("Exception: " + ex.ToString()); throw; }Traceerlogboekregistratie van streamingdiagnose vanaf de Azure-opdrachtregel (plus Een idee!)
Hoe u de opdrachtregel gebruikt om te doen wat u in deze zelfstudie kunt doen in Visual Studio. Een idee is een hulpprogramma voor het debuggen van ASP.NET toepassingen.Met Web Apps logboekregistratie en diagnostische gegevens - met David Ebbo en streaminglogboeken van Web Apps - met David Ebbo
Video's van Scott Hanselman en David Ebbo.
Voor logboekregistratie van fouten kunt u ook uw eigen traceringscode schrijven door gebruik te maken van een opensource-framework voor logboekregistratie, zoals ELMAH. Zie blogposts van Scott Hanselman over ELMAH voor meer informatie.
U hoeft ook geen streaminglogboeken van Azure ASP.NET of System.Diagnostics tracering te gebruiken. De App Service service voor streaminglogboek van de app streamt alle.txt , .html of .log-bestanden die worden gevonden in de map LogFiles. Daarom kunt u uw eigen systeem voor logboekregistratie maken dat naar het bestandssysteem van de app schrijft, en uw bestand wordt automatisch gestreamd en gedownload. U hoeft alleen maar toepassingscode te schrijven die bestanden maakt in de map d:\home\logfiles.
Webserverlogboeken analyseren
Zie de volgende bronnen voor meer informatie over het analyseren van webserverlogboeken:
- LogParser
Een hulpprogramma voor het weergeven van gegevens in webserverlogboeken (.log-bestanden). - Problemen met IIS-prestaties of toepassingsfouten oplossen met LogParser
Een inleiding tot het hulpprogramma Logboekparser dat u kunt gebruiken om webserverlogboeken te analyseren. - Blogposts van Robert McRayray over het gebruik van LogParser
- De HTTP-statuscode in IIS 7.0, IIS 7.5 en IIS 8.0
Logboeken voor het traceren van mislukte aanvragen analyseren
De Microsoft TechNet-website bevat een sectie Using Failed Request Tracing (Tracering van mislukte aanvragen gebruiken). Dit kan handig zijn voor inzicht in het gebruik van deze logboeken. Deze documentatie is echter voornamelijk gericht op het configureren van tracering van mislukte aanvragen in IIS, wat niet mogelijk is in Azure App Service.