Översikt över programövervakning för Azure App Service

Nu är det enklare än någonsin att aktivera övervakning av dina webbprogram baserat på ASP.NET, ASP.NET Core, Java och Node.js som körs i Azure App Service. Tidigare behövde du instrumentera appen manuellt, men det senaste tillägget/agenten är nu inbyggd i App Service-avbildningen som standard.

Aktivera Application Insights

Det finns två sätt att aktivera övervakning för program som finns i App Service:

  • Övervakning av program för automatisk instrumentering (ApplicationInsightsAgent).

    Den här metoden är den enklaste att aktivera och ingen kodändring eller avancerade konfigurationer krävs. Det kallas ofta "körningsövervakning". För App Service rekommenderar vi att du åtminstone aktiverar den här övervakningsnivån. Baserat på ditt specifika scenario kan du utvärdera om mer avancerad övervakning via manuell instrumentering behövs.

    När du aktiverar automatisk instrumentering aktiverar den Application Insights med en standardinställning (den innehåller även sampling). Även om du anger i Azure AppInsights: Sampling: Alla data 100 % ignoreras den här inställningen.

    En fullständig lista över scenarier med automatisk instrumentering som stöds finns i Miljöer, språk och resursprovidrar som stöds.

    Följande plattformar stöds för övervakning av automatisk instrumentering:

  • Instrumentera programmet manuellt via kod genom att installera Application Insights SDK.

    Den här metoden är mycket mer anpassningsbar, men den kräver följande metoder: SDK för .NET Core, .NET, Node.js, Python och en fristående agent för Java. Den här metoden innebär också att du måste hantera uppdateringarna till den senaste versionen av paketen själv.

    Om du behöver göra anpassade API-anrop för att spåra händelser/beroenden som inte samlas in som standard med övervakning av automatisk instrumentering måste du använda den här metoden. Mer information finns i Application Insights API för anpassade händelser och mått.

Om både övervakning av autoinstrumentation och manuell SDK-baserad instrumentation identifieras i .NET respekteras endast de manuella instrumentationsinställningarna i .NET, medan endast autoinstrumentationen i Java genererar telemetrin. Den här metoden är att förhindra att dubbletter av data skickas.

Kommentar

Snapshot Debugger och Profiler är endast tillgängliga i .NET och .NET Core.

Viktig information

Det här avsnittet innehåller viktig information för Azure Web Apps-tillägget för körningsinstrumentation med Application Insights.

Om du vill ta reda på vilken version av tillägget du använder för närvarande går du till https://<yoursitename>.scm.azurewebsites.net/ApplicationInsights.

Viktig information

2.8.44

2.8.43

  • Avgränsa .NET/.NET Core, Java och Node.js paket i olika App Service Windows-webbplatstillägg.

2.8.42

  • JAVA-tillägg: Uppgraderat till Java Agent 3.2.0 från 2.5.1.
  • Node.js tillägg: AI SDK har uppdaterats till 2.1.8 från 2.1.7. Stöd har lagts till för användar- och systemtilldelade Microsoft Entra-hanterade identiteter.
  • .NET Core: Lade till fristående distributioner och .NET 6.0-stöd med hjälp av .NET Startup Hook.

2.8.41

  • Node.js tillägg: AI SDK har uppdaterats till 2.1.7 från 2.1.3.
  • .NET Core: Har tagits bort från supportversionen (2.1). Versioner som stöds är 3.1 och 5.0.

2.8.40

  • JAVA-tillägg: Uppgraderat till Java Agent 3.1.1 (GA) från 3.0.2.
  • Node.js tillägg: AI SDK har uppdaterats till 2.1.3 från 1.8.8.

2.8.39

  • .NET Core: Stöd för .NET Core 5.0 har lagts till.

2.8.38

  • JAVA-tillägg: uppgraderat till Java Agent 3.0.2 (GA) från 2.5.1.
  • Node.js tillägg: AI SDK har uppdaterats till 1.8.8 från 1.8.7.
  • .NET Core: Har tagits bort från supportversioner (2.0, 2.2, 3.0). Versioner som stöds är 2.1 och 3.1.

2.8.37

  • AppSvc Windows-tillägg: Fick .NET Core att fungera med valfri version av System.Diagnostics.DiagnosticSource.dll.

2.8.36

  • AppSvc Windows-tillägg: Aktiverat Inter-op med AI SDK i .NET Core.

2.8.35

  • AppSvc Windows-tillägg: Stöd för .NET Core 3.1 har lagts till.

2.8.33

  • .NET, .NET Core, Java och Node.js agenter och Windows-tillägget: Stöd för nationella moln. Anslut ionssträngar kan användas för att skicka data till nationella moln.

2.8.31

  • ASP.NET Core-agenten åtgärdade ett problem med Application Insights SDK. Om körningen läste in den felaktiga versionen av System.Diagnostics.DiagnosticSource.dllkraschar inte det kodlösa tillägget programmet och säkerhetskopieras. För att åtgärda problemet bör kunderna ta bort System.Diagnostics.DiagnosticSource.dll från mappen bin eller använda den äldre versionen av tillägget genom att ange ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24. Om de inte gör det är programövervakning inte aktiverat.

2.8.26

  • ASP.NET Core-agent: Åtgärdat problem som rör uppdaterad Application Insights SDK. Agenten försöker inte läsa in AiHostingStartup om ApplicationInsights.dll redan finns i mappen bin. Den löser problem som rör reflektion via Assembly<AiHostingStartup>. GetTypes().
  • Kända problem: Undantag System.IO.FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' kan uppstå om en annan version av DiagnosticSource dll läses in. Det kan till exempel inträffa om System.Diagnostics.DiagnosticSource.dll det finns i publiceringsmappen. Som åtgärd kan du använda den tidigare versionen av tillägget genom att ange appinställningar i apptjänster: ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24.

2.8.24

  • Ompaketerad version av 2.8.21.

2.8.23

  • Stöd för kodlös övervakning har lagts till ASP.NET Core 3.0.
  • Uppdaterade ASP.NET Core SDK till 2.8.0 för körningsversionerna 2.1, 2.2 och 3.0. Appar som riktar sig till .NET Core 2.0 fortsätter att använda 2.1.1 av SDK:et.

2.8.14

  • Uppdaterade ASP.NET Core SDK-versionen från 2.3.0 till den senaste (2.6.1) för appar som riktar sig till .NET Core 2.1, 2.2. Appar som riktar sig till .NET Core 2.0 fortsätter att använda 2.1.1 av SDK:et.

2.8.12

  • Stöd för ASP.NET Core 2.2-appar.

  • En bugg har åtgärdats i ASP.NET Core-tillägget som orsakar inmatning av SDK även när programmet redan har instrumenterats med SDK:t. För 2.1- och 2.2-appar gör förekomsten av ApplicationInsights.dll i programmappen att tillägget säkerhetskopieras. För 2.0-appar säkerhetskopieras tillägget endast om ApplicationInsights är aktiverat med ett UseApplicationInsights() anrop.

  • Permanent korrigering för ofullständigt HTML-svar för ASP.NET Core-appar. Den här korrigeringen har nu utökats till att fungera för .NET Core 2.2-appar.

  • Stöd har lagts till för att inaktivera JavaScript-inmatning för ASP.NET Core-appar (APPINSIGHTS_JAVASCRIPT_ENABLED=false appsetting). För ASP.NET kärna är JavaScript-inmatningen i "Opt-Out"-läge som standard, såvida inte uttryckligen inaktiverad. (Standardinställningen görs för att behålla det aktuella beteendet.)

  • Åtgärdade ASP.NET Core-tilläggsfel som orsakade inmatning även om ikey inte fanns.

  • En bugg i SDK-versionsprefixlogiken som orsakade en felaktig SDK-version i telemetri har åtgärdats.

  • SDK-versionsprefix för ASP.NET Core-appar har lagts till för att identifiera hur telemetri samlades in.

  • SCM- ApplicationInsights-sidan har åtgärdats för att korrekt visa versionen av det förinstallerade tillägget.

2.8.10

  • Korrigering för ofullständigt HTML-svar för ASP.NET Core-appar.

Vanliga frågor och svar

Det här avsnittet innehåller svar på vanliga frågor.

Vad ändrar Application Insights i mitt projekt?

Informationen beror på typen av projekt. För ett webbprogram:

  • Lägger till dessa filer i projektet:
    • ApplicationInsights.config
    • ai.js
  • Installerar dessa NuGet-paket:
    • Application Insights API: Kärn-API:et
    • Application Insights API för webbprogram: Används för att skicka telemetri från servern
    • Application Insights API för JavaScript-program: Används för att skicka telemetri från klienten
  • Paketen innehåller följande sammansättningar:
    • Microsoft.ApplicationInsights
    • Microsoft.ApplicationInsights.Platform
  • Infogar objekt i:
    • Web.config
    • packages.config
  • (Endast för nya projekt lägger du till Application Insights i ett befintligt projekt manuellt.) Infogar kodfragment i klient- och serverkoden för att initiera dem med Application Insights-resurs-ID:t. I en MVC-app infogas till exempel kod i huvudsidan Views/Shared/_Layout.cshtml.

Nästa steg

Lär dig hur du aktiverar övervakning av autoinstrumenteringsprogram för ditt .NET Core-, .NET-, Java-, Nodejs- eller Python-program som körs i App Service.