Overzicht van toepassingsbewaking voor Azure-app Service

Het is nu eenvoudiger dan ooit om bewaking van uw webtoepassingen in te schakelen op basis van ASP.NET, ASP.NET Core, Java en Node.js die worden uitgevoerd op Azure-app Service. Voorheen moest u uw app handmatig instrumenteren, maar de nieuwste extensie/agent is nu standaard ingebouwd in de App Service-installatiekopie.

Application Insights inschakelen

Er zijn twee manieren om bewaking in te schakelen voor toepassingen die worden gehost in App Service:

  • Toepassingsbewaking voor auto-instrumentatie (ApplicationInsightsAgent).

    Deze methode is het eenvoudigst in te schakelen en er zijn geen codewijziging of geavanceerde configuraties vereist. Het wordt vaak 'runtime'-bewaking genoemd. Voor App Service raden we u aan om dit bewakingsniveau minimaal in te schakelen. Op basis van uw specifieke scenario kunt u evalueren of geavanceerdere bewaking via handmatige instrumentatie nodig is.

    Wanneer u automatische instrumentatie inschakelt, wordt Application Insights met een standaardinstelling ingeschakeld (dit omvat ook steekproeven). Zelfs als u in Azure-app Insights hebt ingesteld: Sampling: Alle gegevens 100% worden genegeerd.

    Zie Ondersteunde omgevingen, talen en resourceproviders voor een volledige lijst met ondersteunde auto-instrumentatiescenario's.

    De volgende platformen worden ondersteund voor automatische instrumentatiebewaking:

  • De toepassing handmatig instrumenteren via code door de Application Insights SDK te installeren.

    Deze benadering is veel meer aanpasbaar, maar hiervoor zijn de volgende benaderingen vereist: SDK voor .NET Core, .NET, Node.js, Python en een zelfstandige agent voor Java. Deze methode betekent ook dat u de updates zelf moet beheren naar de nieuwste versie van de pakketten.

    Als u aangepaste API-aanroepen moet maken om gebeurtenissen/afhankelijkheden bij te houden die niet standaard worden vastgelegd met automatische instrumentatiebewaking, moet u deze methode gebruiken. Zie Application Insights-API voor aangepaste gebeurtenissen en metrische gegevens voor meer informatie.

Als zowel automatische instrumentatiebewaking als handmatige SDK-instrumentatie worden gedetecteerd, worden in .NET alleen de handmatige instrumentatie-instellingen gehonoreerd, terwijl in Java alleen de automatische instrumentatie de telemetrie verzendt. Dit is om te voorkomen dat dubbele gegevens worden verzonden.

Notitie

Snapshot Debugger en Profiler zijn alleen beschikbaar in .NET en .NET Core.

Opmerkingen bij de release

Deze sectie bevat de releaseopmerkingen voor de Azure Web Apps-extensie voor runtime-instrumentatie met Application Insights.

Als u wilt zoeken welke versie van de extensie u momenteel gebruikt, gaat u naar https://<yoursitename>.scm.azurewebsites.net/ApplicationInsights.

Opmerkingen bij de release

2.8.44

2.8.43

  • Afzonderlijk .NET/.NET Core-, Java- en Node.js-pakket in verschillende App Service Windows-site-extensie.

2.8.42

  • JAVA-extensie: Bijgewerkt naar Java Agent 3.2.0 vanaf 2.5.1.
  • Node.js-extensie: AI SDK bijgewerkt naar 2.1.8 van 2.1.7. Er is ondersteuning toegevoegd voor door de gebruiker en het systeem toegewezen door Microsoft Entra beheerde identiteiten.
  • .NET Core: zelfstandige implementaties en .NET 6.0-ondersteuning toegevoegd met behulp van .NET Startup Hook.

2.8.41

  • Node.js-extensie: AI SDK bijgewerkt naar 2.1.7 van 2.1.3.
  • .NET Core: niet-ondersteuningsversie (2.1) verwijderd. Ondersteunde versies zijn 3.1 en 5.0.

2.8.40

2.8.39

  • .NET Core: .NET Core 5.0-ondersteuning toegevoegd.

2.8.38

  • JAVA-extensie: bijgewerkt naar Java Agent 3.0.2 (GA) vanaf 2.5.1.
  • Node.js-extensie: AI SDK bijgewerkt naar 1.8.8 van 1.8.7.
  • .NET Core: versies die niet meer worden ondersteund (2.0, 2.2, 3.0) verwijderd. Ondersteunde versies zijn 2.1 en 3.1.

2.8.37

  • AppSvc Windows-extensie: Made .NET Core werkt met elke versie van System.Diagnostics.DiagnosticSource.dll.

2.8.36

  • AppSvc Windows-extensie: Inter-op met AI SDK ingeschakeld in .NET Core.

2.8.35

  • AppSvc Windows-extensie: .NET Core 3.1-ondersteuning toegevoegd.

2.8.33

  • .NET-, .NET Core-, Java- en Node.js-agents en de Windows-extensie: ondersteuning voor onafhankelijke clouds. Verbinding maken ies kunnen worden gebruikt om gegevens naar onafhankelijke clouds te verzenden.

2.8.31

  • De ASP.NET Core-agent heeft een probleem opgelost met de Application Insights SDK. Als de runtime de onjuiste versie van System.Diagnostics.DiagnosticSource.dllheeft geladen, crasht de toepassing niet door de extensie zonder code en wordt deze weer uitgeschakeld. Om het probleem op te lossen, moeten klanten verwijderen System.Diagnostics.DiagnosticSource.dll uit de bin-map of de oudere versie van de extensie gebruiken door de instelling in te stellen ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24. Als dat niet zo is, is toepassingsbewaking niet ingeschakeld.

2.8.26

  • ASP.NET Core-agent: Er is een probleem opgelost met betrekking tot de bijgewerkte Application Insights SDK. De agent probeert niet te laden AiHostingStartup als de ApplicationInsights.dll al aanwezig is in de bin-map. Het lost problemen op met betrekking tot weerspiegeling via Assembly<AiHostingStartup>. GetTypes().
  • Bekende problemen: er kan een uitzondering System.IO.FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' optreden als er een andere versie van DiagnosticSource het DLL-bestand wordt geladen. Dit kan bijvoorbeeld gebeuren als System.Diagnostics.DiagnosticSource.dll deze aanwezig is in de publicatiemap. Als beperking kunt u de vorige versie van de extensie gebruiken door app-instellingen in te stellen in app-services: ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24.

2.8.24

  • Opnieuw verpakte versie van 2.8.21.

2.8.23

  • Ondersteuning voor bewaking zonder code toegevoegd ASP.NET Core 3.0.
  • ASP.NET Core SDK bijgewerkt naar 2.8.0 voor runtimeversie 2.1, 2.2 en 3.0. Apps die gericht zijn op .NET Core 2.0 blijven 2.1.1 van de SDK gebruiken.

2.8.14

  • Bijgewerkt ASP.NET Core SDK-versie van 2.3.0 naar de nieuwste versie (2.6.1) voor apps die gericht zijn op .NET Core 2.1, 2.2. Apps die gericht zijn op .NET Core 2.0 blijven 2.1.1 van de SDK gebruiken.

2.8.12

  • Ondersteuning voor ASP.NET Core 2.2-apps.

  • Er is een fout opgelost in ASP.NET Core-extensie die de injectie van SDK veroorzaakt, zelfs wanneer de toepassing al is geïnstrueerd met de SDK. Voor 2.1- en 2.2-apps zorgt de aanwezigheid van ApplicationInsights.dll in de toepassingsmap ervoor dat de extensie wordt teruggezet. Voor 2.0-apps wordt de extensie alleen uitgeschakeld als ApplicationInsights is ingeschakeld met een UseApplicationInsights() aanroep.

  • Permanente oplossing voor onvolledig HTML-antwoord voor ASP.NET Core-apps. Deze oplossing is nu uitgebreid voor .NET Core 2.2-apps.

  • Er is ondersteuning toegevoegd voor het uitschakelen van JavaScript-injectie voor ASP.NET Core-apps (APPINSIGHTS_JAVASCRIPT_ENABLED=false appsetting). Voor ASP.NET kern bevindt de JavaScript-injectie zich standaard in de modus Afmelden, tenzij deze expliciet is uitgeschakeld. (De standaardinstelling wordt uitgevoerd om het huidige gedrag te behouden.)

  • Opgelost ASP.NET Core-extensiefout die injectie veroorzaakte, zelfs als ikey niet aanwezig was.

  • Er is een fout opgelost in de sdk-versievoorvoegsellogica die een onjuiste SDK-versie in telemetrie veroorzaakte.

  • Sdk-versievoorvoegsel toegevoegd voor ASP.NET Core-apps om te bepalen hoe telemetrie is verzameld.

  • Opgeloste SCM- ApplicationInsights-pagina om de versie van de vooraf geïnstalleerde extensie correct weer te geven.

2.8.10

  • Oplossing voor onvolledig HTML-antwoord voor ASP.NET Core-apps.

Veelgestelde vragen

In deze sectie vindt u antwoorden op veelgestelde vragen.

Wat wijzigt Application Insights in mijn project?

De details zijn afhankelijk van het type project. Voor een webtoepassing:

  • Voegt deze bestanden toe aan uw project:
    • ApplicationInsights.config
    • ai.js
  • Installeert deze NuGet-pakketten:
    • Application Insights-API: de kern-API
    • Application Insights-API voor webtoepassingen: wordt gebruikt voor het verzenden van telemetrie vanaf de server
    • Application Insights-API voor JavaScript-toepassingen: wordt gebruikt voor het verzenden van telemetrie van de client
  • De pakketten bevatten deze assembly's:
    • Microsoft.ApplicationInsights
    • Microsoft.ApplicationInsights.Platform
  • Items invoegen in:
    • Web.config
    • packages.config
  • (Alleen voor nieuwe projecten voegt u Application Insights handmatig toe aan een bestaand project.) Voegt codefragmenten in de client- en servercode in om ze te initialiseren met de Application Insights-resource-id. In een MVC-app wordt bijvoorbeeld code ingevoegd in de hoofdpaginaWeergaven /Gedeeld/_Layout.cshtml.

Volgende stappen

Meer informatie over het inschakelen van automatische controle van toepassingen voor uw .NET Core-, .NET-, Java-, Nodejs- of Python-toepassing die wordt uitgevoerd in App Service.