Delen via


Problemen met Application Insights Profiler oplossen

In dit artikel vindt u stappen voor probleemoplossing en informatie waarmee u Application Insights Profiler kunt gebruiken.

Gebruikt u het juiste Profiler-eindpunt?

Momenteel zijn de enige regio's die eindpuntwijzigingen vereisen Azure Government en Microsoft Azure beheerd door 21Vianet.

App-instelling Cloud voor de Amerikaanse overheid China-cloud
ApplicationInsightsProfilerEndpoint https://profiler.monitor.azure.us https://profiler.monitor.azure.cn
ApplicationInsightsEndpoint https://dc.applicationinsights.us https://dc.applicationinsights.azure.cn

Wordt uw app uitgevoerd op de juiste versie?

Profiler wordt ondersteund in .NET Framework later dan 4.6.2.

Als uw web-app een ASP.NET Core-toepassing is, moet deze worden uitgevoerd op de meest recente ondersteunde ASP.NET Core-runtime.

Gebruikt u het juiste Azure-serviceplan?

Profiler wordt momenteel niet ondersteund in gratis of gedeelde App Service-abonnementen. Voer een upgrade uit naar een van de basisplannen voor Profiler om aan de slag te gaan.

Notitie

Het Azure Functions-verbruiksplan wordt niet ondersteund. Zie live Azure Functions-app profilen met Application Insights.

Zoekt u binnen het juiste tijdsbestek naar Profiler-gegevens?

Als de gegevens die u probeert weer te geven ouder zijn dan twee weken, probeert u het tijdfilter te beperken en het opnieuw te proberen. Traceringen worden na zeven dagen verwijderd.

Hebt u toegang tot de gateway?

Controleer of een firewall of proxy's uw toegang tot deze webpagina niet blokkeren.

Ziet u time-outs of moet u controleren of Profiler wordt uitgevoerd?

Profileringsgegevens worden alleen geüpload wanneer deze kunnen worden gekoppeld aan een aanvraag die is opgetreden terwijl Profiler werd uitgevoerd. Profiler verzamelt gegevens gedurende twee minuten per uur. U kunt Profiler ook activeren door een profileringssessie te starten.

Profiler schrijft traceringsberichten en aangepaste gebeurtenissen naar uw Application Insights-resource. U kunt deze gebeurtenissen gebruiken om te zien hoe Profiler wordt uitgevoerd.

Zoek naar traceringsberichten en aangepaste gebeurtenissen die door Profiler naar uw Application Insights-resource worden verzonden.

  1. Selecteer Zoeken in uw Application Insights-resource in het bovenste menu.

    Schermopname van het selecteren van de knop Zoeken in de Application Insights-resource.

  2. Gebruik de volgende zoekreeks om de relevante gegevens te vinden:

    stopprofiler OR startprofiler OR upload OR ServiceProfilerSample
    

    Schermopname van de zoekresultaten uit bovengenoemde zoekreeks.

    De voorgaande zoekresultaten bevatten twee voorbeelden van zoekopdrachten uit twee AI-resources:

    • Als de toepassing geen aanvragen ontvangt terwijl Profiler wordt uitgevoerd, wordt in het bericht uitgelegd dat het uploaden is geannuleerd vanwege geen activiteit.

    • Profiler heeft aangepaste gebeurtenissen gestart en verzonden toen er aanvragen werden gedetecteerd die plaatsvonden terwijl Profiler werd uitgevoerd. Als de ServiceProfilerSample aangepaste gebeurtenis wordt weergegeven, betekent dit dat een profiel is vastgelegd en beschikbaar is in het deelvenster Prestaties van Application Insights.

    Als er geen records worden weergegeven, wordt Profiler niet uitgevoerd of duurde het te lang om te reageren. Zorg ervoor dat Profiler is ingeschakeld in uw Azure-service.

Dubbel tellen in parallelle threads

Wanneer twee of meer parallelle threads zijn gekoppeld aan een aanvraag, kan de totale tijdmeting in de stackviewer langer zijn dan de duur van de aanvraag. In dat geval is de totale threadtijd meer dan de werkelijke verstreken tijd.

Een thread kan bijvoorbeeld wachten op de andere om te worden voltooid. De kijker probeert deze situatie te detecteren en laat het oninterest wachten weg. Als u dit doet, wordt er aan de kant van het weergeven van te veel informatie in plaats van weg te laten wat kritieke informatie kan zijn.

Wanneer u parallelle threads in uw traceringen ziet, bepaalt u welke threads wachten, zodat u het dynamische pad voor de aanvraag kunt identificeren. Normaal gesproken wacht de thread die snel een wachtstatus krijgt, op de andere threads. Richt u op de andere threads en negeer de tijd in de wachtende threads.

Problemen met Profiler in uw specifieke Azure-service oplossen

In de volgende secties wordt u stapsgewijs begeleid bij het oplossen van problemen met Profiler in Azure-app Service of Azure Cloud Services.

Azure App Service

Zorg ervoor dat Profiler goed werkt:

  • Voor uw web-app is Application Insights ingeschakeld met de juiste instellingen.

  • De WebJob ApplicationInsightsProfiler3 wordt uitgevoerd. De webtaak controleren:

    1. Ga naar Kudu. In Azure Portal:

      1. Selecteer geavanceerde hulpprogramma's in het linkerdeelvenster in uw App Service-exemplaar.
      2. Selecteer Go.
    2. Selecteer in het bovenste menu Extra>WebJobs-dashboard. Het deelvenster WebJobs wordt geopend.

      Als ApplicationInsightsProfiler3 niet wordt weergegeven, start u de App Service-toepassing opnieuw.

      Schermopname van het deelvenster WebJobs, waarin de naam, status en laatste runtime van taken worden weergegeven.

    3. Als u de details van de webtaak, inclusief het logboek, wilt weergeven, selecteert u de koppeling ApplicationInsightsProfiler3 . Het deelvenster Details van doorlopende webtaak wordt geopend.

      Schermopname van het deelvenster Details van continue webtaak.

Als Profiler nog steeds niet voor u werkt, downloadt u het logboek en dient u een ondersteuning voor Azure ticket in.

Controleer de statuspagina van de site-extensie van Diagnostic Services

Als u Profiler hebt ingeschakeld via het deelvenster Application Insights in de portal, wordt deze beheerd door de site-extensie Diagnostic Services. U kunt de statuspagina van deze extensie controleren door naar https://{site-name}.scm.azurewebsites.net/DiagnosticServices.

Notitie

Het domein van de koppeling naar de statuspagina is afhankelijk van de cloud. Dit domein is hetzelfde als de Kudu-beheersite voor App Service.

Op de statuspagina ziet u de installatiestatus van de agents Profiler en Snapshot Debugger . Als er een onverwachte fout is opgetreden, wordt deze weergegeven, samen met de stappen voor het oplossen van deze fout.

U kunt de Kudu-beheersite voor App Service gebruiken om de basis-URL van deze statuspagina op te halen:

  1. Open uw App Service-toepassing in Azure Portal.
  2. Selecteer Geavanceerde hulpprogramma's.
  3. Selecteer Go.
  4. Op de Kudu-beheersite:
    1. Voeg /DiagnosticServices toe aan de URL.
    2. Selecteer Enter.

Het eindigt als https://<kudu-url>/DiagnosticServices.

Er wordt een statuspagina weergegeven die lijkt op het volgende voorbeeld.

Schermopname van de statuspagina diagnostische services.

Notitie

Installatie zonder code van Application Insights Profiler volgt het .NET Core-ondersteuningsbeleid. Zie .NET Core-ondersteuningsbeleid voor meer informatie over ondersteunde runtimes.

Handmatige installatie

Wanneer u Profiler configureert, worden er updates doorgevoerd in de instellingen van de web-app. Indien nodig kunt u de updates handmatig toepassen.

Te veel actieve profileringssessies

In Azure-app Service geldt een limiet van slechts één profileringssessie tegelijk. Deze limiet wordt afgedwongen op VM-niveau voor alle toepassingen en implementatiesites die worden uitgevoerd in een App Service-plan. Deze limiet geldt ook voor profileringssessies die zijn gestart via Diagnose en oplossing van problemen, Kudu en Application Insights Profiler. Als Profiler probeert een sessie te starten wanneer een andere sessie al wordt uitgevoerd, wordt er een fout vastgelegd in het toepassingslogboek en ook het logboek voor continue webtaken voor ApplicationInsightsProfiler3.

Mogelijk ziet u een van de volgende berichten in de logboeken:

  • Microsoft.ServiceProfiler.Exceptions.TooManyETWSessionException
  • Error: StartProfiler failed. Details: System.Runtime.InteropServices.COMException (0xE111005E): Exception from HRESULT: 0xE111005E

De foutcode 0xE111005E geeft aan dat een profileringssessie niet kan worden gestart omdat er al een andere sessie wordt uitgevoerd.

Als u de fout wilt voorkomen, verplaatst u sommige web-apps naar een ander App Service-plan of schakelt u Profiler uit op sommige toepassingen. Als u implementatiesites gebruikt, moet u alle ongebruikte sites stoppen.

Implementatiefout: Map niet leeg 'D:\home\site\wwwroot\App_Data\jobs'

Als u uw web-app opnieuw implementeert in een Web Apps-resource waarvoor Profiler is ingeschakeld, ziet u mogelijk het volgende bericht:

"Map niet leeg 'D:\home\site\wwwroot\App_Data\jobs'"

Deze fout treedt op als u Web Deploy uitvoert vanuit scripts of vanuit Azure Pipelines. Los dit op door de volgende implementatieparameters toe te voegen aan de webimplementatietaak:

-skip:Directory='.*\\App_Data\\jobs\\continuous\\ApplicationInsightsProfiler.*' -skip:skipAction=Delete,objectname='dirPath',absolutepath='.*\\App_Data\\jobs\\continuous$' -skip:skipAction=Delete,objectname='dirPath',absolutepath='.*\\App_Data\\jobs$'  -skip:skipAction=Delete,objectname='dirPath',absolutepath='.*\\App_Data$'

Met deze parameters wordt de map verwijderd die wordt gebruikt door Application Insights Profiler en wordt het herployproces gedeblokkeerd. Ze hebben geen invloed op het Profiler-exemplaar dat momenteel wordt uitgevoerd.

Wordt Application Insights Profiler uitgevoerd?

Profiler wordt uitgevoerd als een doorlopende webtaak in de web-app. U kunt de resource van de web-app openen in Azure Portal. Controleer in het deelvenster WebJobs de status van ApplicationInsightsProfiler. Als deze niet wordt uitgevoerd, opent u Logboeken voor meer informatie.

VM's en Azure Cloud Services

Ga als volgt te werk om te zien of Profiler correct is geconfigureerd door Azure Diagnostics:

  1. Controleer of de inhoud van de geïmplementeerde Azure Diagnostics-configuratie is wat u verwacht.

  2. Zorg ervoor dat Azure Diagnostics de juiste iKey doorgeeft op de Profiler-opdrachtregel.

  3. Controleer het Profiler-logboekbestand om te zien of Profiler is uitgevoerd, maar een fout heeft geretourneerd.

De instellingen controleren die zijn gebruikt voor het configureren van Azure Diagnostics:

  1. Meld u aan bij de virtuele machine (VM).

  2. Open het logboekbestand op deze locatie. De invoegtoepassingsversie is mogelijk nieuwer op uw computer.

    Voor VM's:

    c:\WindowsAzure\logs\Plugins\Microsoft.Azure.Diagnostics.PaaSDiagnostics\1.11.3.12\DiagnosticsPlugin.log
    

    Voor Azure Cloud Services:

    c:\logs\Plugins\Microsoft.Azure.Diagnostics.PaaSDiagnostics\1.11.3.12\DiagnosticsPlugin.log
    
  3. Zoek in het bestand naar de tekenreeks WadCfg om de instellingen te vinden die zijn doorgegeven aan de VIRTUELE machine om Azure Diagnostics te configureren.

  4. Controleer of de iKey die wordt gebruikt door de Profiler-sink juist is.

  5. Controleer de opdrachtregel waarmee Profiler wordt gestart. De opdrachtregelargumenten bevinden zich in het volgende bestand (het station kan zijn c: of d: en de map is mogelijk verborgen):

    Voor VM's:

    C:\ProgramData\ApplicationInsightsProfiler\config.json
    

    Voor Azure Cloud Services:

    D:\ProgramData\ApplicationInsightsProfiler\config.json
    
  6. Zorg ervoor dat de iKey op de Profiler-opdrachtregel juist is.

  7. Als u het pad in het voorgaande config.json bestand gebruikt, controleert u het profiler-logboekbestand met de naam BootstrapN.log. Hiermee wordt het volgende weergegeven:

    • De foutopsporingsinformatie die de instellingen aangeeft die Profiler gebruikt.
    • Status- en foutberichten van Profiler.

    U vindt het bestand:

    Voor VM's:

    C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.IaaSDiagnostics\1.17.0.6\ApplicationInsightsProfiler
    

    Voor Azure Cloud Services:

    C:\Logs\Plugins\Microsoft.Azure.Diagnostics.IaaSDiagnostics\1.17.0.6\ApplicationInsightsProfiler
    
  8. Als Profiler wordt uitgevoerd terwijl uw toepassing aanvragen ontvangt, wordt het volgende bericht weergegeven: 'Activiteit gedetecteerd vanuit iKey'.

  9. Wanneer de tracering wordt geüpload, wordt het volgende bericht weergegeven: 'Beginnen met uploaden van trace'.

Netwerkproxy- of firewallregels bewerken

Als uw toepassing via een proxy of firewall verbinding maakt met internet, moet u mogelijk de regels bijwerken om te communiceren met Profiler.

De IP-adressen die door Application Insights Profiler worden gebruikt, zijn opgenomen in de Azure Monitor-servicetag. Zie de documentatie over servicetags voor meer informatie.

Ondersteuning

Als u nog steeds hulp nodig hebt, dient u een ondersteuningsticket in azure Portal in. Neem de correlatie-id op uit het foutbericht.