Omówienie monitorowania aplikacji dla usługi aplikacja systemu Azure

Teraz łatwiej jest włączyć monitorowanie aplikacji internetowych na podstawie ASP.NET, ASP.NET Core, Java i Node.js uruchomionych w usłudze aplikacja systemu Azure Service. Wcześniej trzeba było ręcznie instrumentować aplikację, ale najnowsze rozszerzenie/agent jest teraz wbudowane w obraz usługi App Service domyślnie.

Włącz usługę Application Insights

Istnieją dwa sposoby włączania monitorowania aplikacji hostowanych w usłudze App Service:

  • Monitorowanie aplikacji autoinstrumentacji (Application Szczegółowe informacje Agent).

    Ta metoda jest najłatwiejsza do włączenia i nie jest wymagana żadna zmiana kodu ani zaawansowane konfiguracje. Jest to często nazywane monitorowaniem "środowiska uruchomieniowego". W przypadku usługi App Service zalecamy włączenie tego poziomu monitorowania co najmniej. W zależności od konkretnego scenariusza możesz ocenić, czy potrzebne jest bardziej zaawansowane monitorowanie za pomocą instrumentacji ręcznej.

    Po włączeniu automatycznej instrumentacji włącza Szczegółowe informacje aplikacji z ustawieniem domyślnym (obejmuje również próbkowanie). Nawet w przypadku ustawienia w aplikacja systemu AzureSzczegółowe informacje: Próbkowanie: wszystkie dane 100% to ustawienie zostanie zignorowane.

    Aby uzyskać pełną listę obsługiwanych scenariuszy automatycznegoinstrumentacji, zobacz Obsługiwane środowiska, języki i dostawcy zasobów.

    Na potrzeby monitorowania automatycznegoinstrumentacji są obsługiwane następujące platformy:

W przypadku wykrycia zarówno monitorowania automatycznegoinstrumentacji, jak i ręcznej instrumentacji opartej na zestawie SDK, na platformie .NET są uwzględniane tylko ustawienia instrumentacji ręcznej, podczas gdy w języku Java tylko autoinstrumentacja emituje dane telemetryczne. Ta praktyka polega na zapobieganiu wysyłaniu zduplikowanych danych.

Uwaga

Debuger migawek i profiler są dostępne tylko na platformach .NET i .NET Core.

Informacje o wersji

Ta sekcja zawiera informacje o wersji rozszerzenia usługi Azure Web Apps na potrzeby instrumentacji środowiska uruchomieniowego za pomocą usługi Application Szczegółowe informacje.

Aby dowiedzieć się, której wersji rozszerzenia używasz, przejdź do strony https://<yoursitename>.scm.azurewebsites.net/ApplicationInsights.

Informacje o wersji

2.8.44

2.8.43

  • Rozdziel pakiet .NET/.NET Core, Java i Node.js na inne rozszerzenie witryny systemu Windows usługi App Service.

2.8.42

  • Rozszerzenie JAVA: uaktualniono do wersji Java Agent 3.2.0 z wersji 2.5.1.
  • Rozszerzenie Node.js: zaktualizowano zestaw AI SDK do wersji 2.1.8 z wersji 2.1.7. Dodano obsługę tożsamości zarządzanych przypisanych przez użytkownika i system firmy Microsoft.
  • .NET Core: dodano wdrożenia samodzielne i obsługę platformy .NET 6.0 przy użyciu programu .NET Startup Hook.

2.8.41

  • Rozszerzenie Node.js: zaktualizowano zestaw AI SDK do wersji 2.1.7 z wersji 2.1.3.
  • .NET Core: usunięto wersję braku obsługi (2.1). Obsługiwane wersje to 3.1 i 5.0.

2.8.40

2.8.39

  • .NET Core: dodano obsługę platformy .NET Core 5.0.

2.8.38

  • Rozszerzenie JAVA: uaktualniono do wersji Java Agent 3.0.2 (GA) z wersji 2.5.1.
  • Rozszerzenie Node.js: zaktualizowano zestaw AI SDK do wersji 1.8.8 z wersji 1.8.7.
  • .NET Core: usunięto wersje poza wsparciem (2.0, 2.2, 3.0). Obsługiwane wersje to 2.1 i 3.1.

2.8.37

  • Rozszerzenie systemu Windows AppSvc: platforma .NET Core współdziała z dowolną wersją pliku System.Diagnostics.DiagnosticSource.dll.

2.8.36

  • Rozszerzenie systemu Windows AppSvc: włączono międzyoperajności z zestawem AI SDK na platformie .NET Core.

2.8.35

  • Rozszerzenie systemu Windows AppSvc: dodano obsługę platformy .NET Core 3.1.

2.8.33

  • Agenci .NET, .NET Core, Java i Node.js oraz rozszerzenie systemu Windows: obsługa suwerennych chmur. Ciągi Połączenie ions mogą służyć do wysyłania danych do suwerennych chmur.

2.8.31

  • Agent ASP.NET Core rozwiązał problem z zestawem SDK usługi Application Szczegółowe informacje. Jeśli środowisko uruchomieniowe załadowało niepoprawną wersję System.Diagnostics.DiagnosticSource.dll, rozszerzenie bez kodu nie powoduje awarii aplikacji i cofa się. Aby rozwiązać ten problem, klienci powinni usunąć System.Diagnostics.DiagnosticSource.dll z folderu bin lub użyć starszej wersji rozszerzenia, ustawiając wartość ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24. Jeśli tak nie jest, monitorowanie aplikacji nie jest włączone.

2.8.26

  • agent ASP.NET Core: rozwiązano problem związany ze zaktualizowanym zestawem SDK usługi Application Szczegółowe informacje. Agent nie próbuje załadowaćAiHostingStartup, jeśli plik Application Szczegółowe informacje.dll jest już obecny w folderze bin. Rozwiązuje problemy związane z odbiciem za pośrednictwem elementu Assembly<AiHostingStartup>. GetTypes().
  • Znane problemy: Jeśli załadowano inną wersję DiagnosticSource biblioteki DLL, może zostać zgłoszony wyjątekSystem.IO.FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. Może się to zdarzyć, na przykład, jeśli System.Diagnostics.DiagnosticSource.dll znajduje się w folderze publikowania. Jako środki zaradcze należy użyć poprzedniej wersji rozszerzenia, ustawiając ustawienia aplikacji w usługach app Services: Application Szczegółowe informacjeAgent_EXTENSIONVERSION=2.8.24.

2.8.24

  • Ponownie spakowane wersje 2.8.21.

2.8.23

  • Dodano obsługę monitorowania bez kodu platformy ASP.NET Core 3.0.
  • Zaktualizowano zestaw ASP.NET Core SDK do wersji 2.8.0 dla środowiska uruchomieniowego w wersji 2.1, 2.2 i 3.0. Aplikacje przeznaczone dla platformy .NET Core 2.0 nadal używają wersji 2.1.1 zestawu SDK.

2.8.14

  • Zaktualizowano zestaw ASP.NET Core SDK z wersji 2.3.0 do najnowszej (2.6.1) dla aplikacji przeznaczonych dla platformy .NET Core 2.1, 2.2. Aplikacje przeznaczone dla platformy .NET Core 2.0 nadal używają wersji 2.1.1 zestawu SDK.

2.8.12

  • Obsługa aplikacji ASP.NET Core 2.2.

  • Usunięto usterkę w rozszerzeniu ASP.NET Core powodującą wstrzyknięcie zestawu SDK nawet wtedy, gdy aplikacja jest już instrumentowana za pomocą zestawu SDK. W przypadku aplikacji w wersji 2.1 i 2.2 obecność pliku Application Szczegółowe informacje.dll w folderze aplikacji powoduje teraz wycofywanie rozszerzenia. W przypadku aplikacji 2.0 rozszerzenie cofa się tylko wtedy, gdy aplikacja Szczegółowe informacje jest włączona za pomocą wywołaniaUseApplicationInsights().

  • Stała poprawka niekompletnej odpowiedzi HTML dla aplikacji ASP.NET Core. Ta poprawka została rozszerzona w celu działania aplikacji platformy .NET Core 2.2.

  • Dodano obsługę wyłączania wstrzykiwania kodu JavaScript dla aplikacji ASP.NET Core (APPINSIGHTS_JAVASCRIPT_ENABLED=false appsetting). W przypadku ASP.NET rdzenia iniekcja języka JavaScript jest domyślnie w trybie "Rezygnacja", chyba że jawnie wyłączono. (Ustawienie domyślne jest wykonywane w celu zachowania bieżącego zachowania).

  • Usunięto usterkę rozszerzenia ASP.NET Core, która spowodowała wstrzyknięcie, nawet jeśli klucz ikey nie był obecny.

  • Usunięto usterkę logiki prefiksu wersji zestawu SDK, która spowodowała nieprawidłową wersję zestawu SDK w telemetrii.

  • Dodano prefiks wersji zestawu SDK dla aplikacji ASP.NET Core w celu zidentyfikowania sposobu zbierania danych telemetrycznych.

  • Naprawiono stronę SCM — aplikacja Szczegółowe informacje aby poprawnie wyświetlić wersję wstępnie zainstalowanego rozszerzenia.

2.8.10

  • Poprawka dotycząca niekompletnej odpowiedzi HTML dla aplikacji ASP.NET Core.

Często zadawane pytania

Ta sekcja zawiera odpowiedzi na typowe pytania.

Co Szczegółowe informacje aplikacji modyfikuje w moim projekcie?

Szczegóły zależą od typu projektu. W przypadku aplikacji internetowej:

  • Dodaje te pliki do projektu:
    • Plik ApplicationInsights.config
    • ai.js
  • Instaluje następujące pakiety NuGet:
    • Interfejs API Szczegółowe informacje aplikacji: podstawowy interfejs API
    • Interfejs API Szczegółowe informacje aplikacji dla aplikacji internetowych: służy do wysyłania danych telemetrycznych z serwera
    • Interfejs API Szczegółowe informacje aplikacji dla aplikacji JavaScript: służy do wysyłania danych telemetrycznych z klienta
  • Pakiety obejmują następujące zestawy:
    • Microsoft.Application Szczegółowe informacje
    • Microsoft.Application Szczegółowe informacje. Platformy
  • Wstawia elementy do:
    • Web.config
    • packages.config
  • (Tylko w przypadku nowych projektów należy ręcznie dodać aplikację Szczegółowe informacje do istniejącego projektu). Wstawia fragmenty kodu klienta i serwera, aby zainicjować je za pomocą identyfikatora zasobu Application Szczegółowe informacje. Na przykład w aplikacji MVC kod jest wstawiany do strony głównej Views/Shared/_Layout.cshtml.

Następne kroki

Dowiedz się, jak włączyć monitorowanie aplikacji autoinstrumentacji dla aplikacji .NET Core, .NET, Java lub Nodejs uruchomionej w usłudze App Service.