Поделиться через


Включение профилировщика .NET для приложений Службы приложений Azure в Windows

Application Insights Profiler для .NET установлен заранее как часть среды выполнения службы приложений Azure. Профилировщик можно запускать на ASP.NET и ASP.NET Core приложениях, работающих на Службе приложений, используя тарифный план "Базовый" или выше.

Установка без кода Application Insights Profiler для .NET:

Чтобы включить .NET Profiler в Linux, следуйте инструкциям по ASP.NET Core веб-приложениям Azure Linux.

Предварительные условия

  • Приложение службы приложений Azure ASP.NET/ASP.NET Core.
  • Ресурс Application Insights, подключенный к вашему App Service-приложению.

Убедитесь, что включен параметр Always on

  1. На портале Azure перейдите к экземпляру Службы приложений.

  2. В меню слева выберите "Конфигурация>".

    Снимок экрана: выбор конфигурации на левой панели.

  3. Выберите вкладку Общие параметры.

  4. Убедитесь, что выбран параметр Всегда включено>Включено.

    Примечание.

    Если переключатель Always on отключен, обновите веб-приложение Служба приложений для запуска на уровне "Базовый" или выше.

    Снимок экрана: вкладка

  5. Если вы внесли изменения, нажмите Сохранить.

Включение Application Insights и профилировщика .NET

Вы можете включить Профилировщик в следующих случаях:

Для Application Insights и Службы приложений в одной подписке

Если ресурс Application Insights находится в той же подписке, что и экземпляр App Service:

  1. В меню слева выберите "Мониторинг>Application Insights".

  2. Нажмите кнопку "Включить Application Insights ".

    Снимок экрана: включение Application Insights для приложения.

  3. На странице параметров Application Insights в разделе Application Insights убедитесь, что выбран параметр Enable .

  4. Убедитесь, что вы подключили ресурс Application Insights к приложению.

    Снимок экрана: включение Application Insights в приложении.

  5. Прокрутите вниз и выберите вкладку .NET или .NET Core в зависимости от приложения.

  6. Убедитесь, что выбран Уровень коллекции>Рекомендуемый.

  7. В разделе "Профилировщик" и "Оптимизация кода" нажмите кнопку "Включить". Если ранее вы выбрали уровень коллекции Базовый, параметр Profiler будет отключен.

    Снимок экрана: включение профилировщика в приложении.

  8. Нажмите кнопку "Применить>да", чтобы подтвердить.

Для Application Insights и Службы приложений в разных подписках

Если ресурс Application Insights находится в другой подписке, чем у вашего экземпляра App Service, необходимо вручную включить Профилировщик для .NET, настроив параметры приложения для вашего экземпляра App Service. Вы можете автоматизировать создание этих параметров с помощью шаблона или других средств. Ниже приведены параметры, необходимые для включения Профилировщика.

Параметр приложения Значение
APPLICATIONINSIGHTS_CONNECTION_STRING Уникальное значение из ресурса App Insights.
APPINSIGHTS_PROFILERFEATURE_VERSION 1.0.0
DiagnosticServices_EXTENSION_VERSION ~3

Установите эти значения с помощью:

Включение профилировщика .NET для региональных облаков

В настоящее время единственными регионами, для которых требуются изменения конечных точек, являются Azure для государственных организаций и Microsoft Azure, управляемые 21Vianet.

Параметр приложения Облако для государственных организаций США облако для Китая.
ApplicationInsightsProfilerEndpoint https://profiler.monitor.azure.us https://profiler.monitor.azure.cn
ApplicationInsightsEndpoint https://{region}.in.applicationinsights.azure.us https://{region}.in.applicationinsights.azure.cn

Сравнение общедоступных и государственных конечных точек Azure для общих служб Azure.

Включите аутентификацию Microsoft Entra для приема профилей

Application Insights Profiler для .NET поддерживает аутентификацию Microsoft Entra для загрузки профилей. Для обработки всех профилей вашего приложения необходимо удостоверить подлинность приложения и предоставить агенту Profiler требуемые настройки приложения.

Профилировщик поддерживает аутентификацию Microsoft Entra только в том случае, если вы ссылаетесь на идентификатор Microsoft Entra и настраиваете его с помощью Application Insights SDK в вашем приложении.

Чтобы включить идентификатор Microsoft Entra для приема профилей, выполните следующие действия.

  1. Создайте и добавьте управляемое удостоверение для проверки подлинности вашего ресурса Application Insights в вашу Службу приложений.

    1. Документация по управляемому удостоверению, назначаемого системой

    2. Документация по управляемому удостоверению, назначаемому пользователем

  2. Настройте и включите идентификатор Microsoft Entra в ресурсе Application Insights.

  3. Добавьте следующий параметр приложения, чтобы сообщить агенту Profiler, какой управляемый идентификатор следует использовать.

    • Для назначаемого системой идентификатора:

      Параметр приложения Значение
      Строка аутентификации ApplicationInsights Authorization=AAD
    • Для назначенной пользователем личности

      Параметр приложения Значение
      APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AAD;ClientId={Client id of the User-Assigned Identity}

Отключение профилировщика .NET

Чтобы остановить или перезапустить Profiler для отдельного экземпляра приложения:

  1. В разделе Настройки на левой панели выберите WebJobs.

    Снимок экрана: выбор веб-заданий на левой панели.

  2. Выберите веб-задание с именем ApplicationInsightsProfiler3.

  3. Выберите Остановить.

    Снимок экрана: выбор остановки для остановки веб-задания.

  4. Выберите Да для подтверждения.

Мы рекомендуем включить Profiler для всех приложений, чтобы обеспечить максимально быстрое обнаружение проблем производительности.

Файлы Профилировщика можно удалить при использовании WebDeploy для развертывания изменений в веб-приложении. Удаление можно предотвратить, исключив удаление папки App_Data во время развертывания.

Следующие шаги