Обзор мониторинга приложений для Службы приложений Azure
Процесс включения мониторинга для ваших веб-приложений на основе ASP.NET, ASP.NET Core, Java и Node.js, работающих в службах приложений Azure, стал значительно проще. Ранее вам нужно было вручную инструментировать приложение. Теперь последнее расширение или агент по умолчанию встроены в образ Службы приложений.
Включить Application Insights
Существует два способа включения мониторинга для приложений, размещенных в службах приложений Azure:
Мониторинг приложений автоинструментации (Application Аналитика Agent).
Это самый простой способ, в котором не требуется изменять код или выполнять дополнительные настройки. Его часто называют мониторингом среды выполнения. Для Службы приложений рекомендуется включить как минимум этот уровень мониторинга. В зависимости от конкретного сценария, можно оценить, требуется ли расширенный мониторинг с использованием ручных инструментов.
При включении автоматического инструментирования приложение Аналитика с параметром по умолчанию (также включает выборку). Даже если задано в приложение Azure Аналитика: выборка: все данные 100 % этого параметра будут игнорироваться.
Полный список поддерживаемых сценариев автоинструментации см. в статье "Поддерживаемые среды", "Языки" и поставщики ресурсов.
Для мониторинга автоинструментации поддерживаются следующие платформы:
Инструментирование приложения вручную с помощью кода путем установки пакета SDK Application Insights.
Этот подход гораздо более гибкий, но он требует следующих средств: SDK для .NET Core, .NET, Node.js, Python, а также отдельный агент для Java. Этот метод также означает, что вам необходимо самостоятельно управлять обновлениями до последних версий пакетов.
Если необходимо выполнить пользовательские вызовы API для отслеживания событий и зависимостей, не записанных по умолчанию с помощью мониторинга автоинструментации, необходимо использовать этот метод. Дополнительные сведения см. в разделе API Application Insights для настраиваемых событий и метрик.
Если обнаружен мониторинг автоинструментации и инструментирование на основе ручного пакета SDK, в .NET учитываются только параметры ручной инструментирования, в то время как в Java создаются данные телеметрии только в Java. Это необходимо, чтобы предотвратить отправку повторяющихся данных.
Примечание.
Отладчик моментальных снимков и профилировщик доступны только в .NET и .NET Core.
Заметки о выпуске
В этом разделе содержатся заметки о выпуске расширения azure веб-приложения для инструментирования среды выполнения с помощью Application Аналитика.
Чтобы найти версию расширения, которую вы используете в данный момент, перейдите в раздел https://<yoursitename>.scm.azurewebsites.net/ApplicationInsights
.
Заметки о выпуске
2.8.44
- .NET/.NET Core: обновлен до приложения Аналитика пакет SDK для .NET до версии 2.20.1.
2.8.43
- Выделение пакета для .NET/.NET Core, Java и Node.js в отдельное расширение сайта Windows для Службы приложений.
2.8.42
- Расширение JAVA: обновлено до агента Java 3.2.0 с версии 2.5.1.
- Расширение Node.js: пакет SDK для AI обновлен до версии 2.1.8 с версии 2.1.7. Добавлена поддержка управляемых удостоверений Microsoft Entra, назначенных пользователем и системой.
- .NET Core: добавлены самодостаточные развертывания и поддержка.NET 6.0 с использованием обработчика запуска.NET.
2.8.41
- Расширение Node.js: пакет SDK для AI обновлен до версии 2.1.7 с версии 2.1.3.
- .NET Core: удалена неподдерживаемая версия (2.1). Поддерживаются версии 3.1 и 5.0.
2.8.40
- Расширение JAVA: обновлено до агента Java 3.1.1 (GA) с версии 3.0.2.
- Расширение Node.js: пакет SDK для AI обновлен до версии 2.1.3 с версии 1.8.8.
2.8.39
- .NET Core: добавлена поддержка .NET Core 5.0.
2.8.38
- Расширение JAVA: обновлено до агента Java 3.0.2 (GA) с версии 2.5.1.
- Расширение Node.js: пакет SDK для AI обновлен до версии 1.8.8 с версии 1.8.7.
- .NET Core: удалены неподдерживаемые версии (2.0, 2.2, 3.0). Поддерживаются версии 2.1 и 3.1.
2.8.37
- Расширение AppSvc для Windows: .NET Core теперь работает с любой версией System.Diagnostics.DiagnosticSource.dll.
2.8.36
- Расширение AppSvc для Windows: реализовано взаимодействие с пакетом SDK для AI в .NET Core.
2.8.35
- Расширение AppSvc для Windows: добавлена поддержка .NET Core 3.1.
2.8.33
- Агенты .NET, .NET Core, Java и Node.js и расширение для Windows: поддержка национальных облаков. Строки соединений можно использовать для отправки данных в национальные облака.
2.8.31
- Агент ASP.NET Core исправлена проблема с пакетом SDK для приложений Аналитика. Если среда выполнения загрузила неправильную версию
System.Diagnostics.DiagnosticSource.dll
, расширение без кода не завершает работу приложения и отключается. Чтобы устранить проблему, клиенты должны удалитьSystem.Diagnostics.DiagnosticSource.dll
из папки bin или использовать старую версию расширения, установив параметрApplicationInsightsAgent_EXTENSIONVERSION=2.8.24
. Если они нет, мониторинг приложений не включен.
2.8.26
- Агент ASP.NET Core: исправлена проблема, связанная с обновленным пакетом SDK для Application Insights. Агент не пытается загрузить
AiHostingStartup
, если приложение Аналитика.dll уже присутствует в папке bin. Он устраняет проблемы, связанные с отражением с помощью Assembly<AiHostingStartup>. GetTypes(). - Известные проблемы: при загрузке другой версии DLL-библиотеки
DiagnosticSource
может возникнуть исключениеSystem.IO.FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'
. Это может произойти, например, еслиSystem.Diagnostics.DiagnosticSource.dll
он присутствует в папке публикации. Для устранения рисков используйте предыдущую версию расширения, задав следующие параметры приложения в службах приложений: ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24.
2.8.24
- Переупакованная версия 2.8.21.
2.8.23
- Добавлена поддержка мониторинга без кода ASP.NET Core 3.0.
- Пакет SDK для ASP.NET Core обновлен до версии 2.8.0 для сред выполнения версий 2.1, 2.2 и 3.0. Приложения, предназначенные для .NET Core 2.0, продолжают использовать пакет SDK версии 2.1.1.
2.8.14
- Пакета SDK для ASP.NET Core обновлен с версии 2.3.0 до последней версии (2.6.1) для приложений, предназначенных для .NET Core 2.1, 2.2. Приложения, предназначенные для .NET Core 2.0, продолжают использовать пакет SDK версии 2.1.1.
2.8.12
Поддержка приложений ASP.NET Core 2.2.
Исправлена ошибка в расширении ASP.NET Core, которая вызывает пакет внедрение кода SDK, даже если приложение уже инструментируется с помощью SDK. Для приложений версий 2.1 и 2.2 наличие файла ApplicationInsights.dll в папке приложения теперь вызывает отключение расширения. Для приложений версии 2.0 расширение отключается, только если ApplicationInsights включается с помощью вызова
UseApplicationInsights()
.Постоянное исправление ошибки с неполным ответом HTML для приложений ASP.NET Core. Теперь это исправление работает с приложениями .NET Core 2.2.
Добавлена поддержка отключения внедрения кода JavaScript для приложений ASP.NET Core (
APPINSIGHTS_JAVASCRIPT_ENABLED=false appsetting
). Для ASP.NET Core внедрение кода JavaScript по умолчанию находится в отключенном режиме, если этот параметр не отключен явным образом. (Настройка по умолчанию позволяет сохранить текущий режим поведения.)Исправлена ошибка расширения ASP.NET Core, которая вызвала внедрение, даже если ikey не присутствовал.
Исправлена ошибка в логике префикса версии пакета SDK, которая вела к указанию неправильной версии пакета SDK в телеметрии.
Добавлен префикс версии пакета SDK для приложений ASP.NET Core, указывающий, как собираются данные телеметрии.
Исправлена страница SCM-ApplicationInsights, на которой теперь правильно отображается версия предварительно установленного расширения.
2.8.10
- Исправлена ошибка с неполным ответом HTML для приложений ASP.NET Core.
Часто задаваемые вопросы
В этом разделы приводятся ответы на часто задаваемые вопросы.
Что Application Insights изменяет в моем проекте?
Подробности зависят от типа проекта. Для веб-приложения:
- Добавляет эти файлы в проект:
- ApplicationInsights.config
- ai.js
- Устанавливает следующие пакеты NuGet:
- API Аналитика приложения: основной API
- API Аналитика приложения для веб-приложений: используется для отправки данных телеметрии с сервера.
- API Аналитика приложения для приложений JavaScript: используется для отправки данных телеметрии от клиента
- Пакеты включают следующие сборки:
- Microsoft.ApplicationInsights
- Microsoft.ApplicationInsights.Platform
- Вставляет элементы в:
- Web.config
- packages.config
- (Только для новых проектов добавьте приложение Аналитика в существующий проект вручную.) Вставляет фрагменты кода клиента и сервера, чтобы инициализировать их с помощью идентификатора ресурса приложения Аналитика. Например, в приложении MVC код вставляется в главную страницу Views/Shared/_Layout.cshtml.
Следующие шаги
Узнайте, как включить мониторинг приложений автоинструментации для приложения .NET Core, .NET, Java, Nodejs или Python, работающего в Служба приложений.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по