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

Используя Application Insights Profiler для .NET, вы можете отслеживать, сколько времени затрачивается в каждом методе ваших работающих веб-приложений ASP.NET Core. В этой статье рассматриваются веб-приложения, размещенные в Linux. Вы также можете экспериментировать с помощью сред разработки Windows и Mac.

В этой статье вы:

  • Настройте веб-приложение ASP.NET Core, размещенное в Linux на локальном компьютере.
  • Создайте службу приложений с помощью портала Azure.
  • Разверните локальный проект ASP.NET Core в Azure с помощью локального Git.
  • Добавьте профилировщик в веб-приложение ASP.NET Core.

Замечание

Ознакомьтесь с рекомендациями по поддержке SDK Application Insights, чтобы узнать о политике поддержки SDK. Инструкции по миграции см. в разделе Миграция с пакетов SDK Application Insights на Azure Monitor OpenTelemetry.

Предостережение

Для новых приложений используйте Azure Monitor OpenTelemetry Distro. Он предоставляет аналогичный интерфейс и сопоставимые функциональные возможности с пакетом SDK Application Insights. Чтобы перейти на предложение на основе OpenTelemetry, ознакомьтесь с рекомендациями по миграции.

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

Локальная настройка проекта

  1. Откройте окно командной строки на компьютере.

  2. Создайте веб-приложение MVC для ASP.NET Core.

    dotnet new mvc -n LinuxProfilerTest
    
  3. Измените рабочую папку на корневую папку для проекта.

  4. Добавьте пакеты NuGet для сбора трассировок Профилировщика:

    dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore --prerelease
    dotnet add package Azure.Monitor.OpenTelemetry.Profiler --prerelease
    

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

  1. В предпочитаемом редакторе кода убедитесь, что вы добавили два пакета для Azure Monitor OpenTelemetry Profiler в Program.cs для .NET. При необходимости добавьте настраиваемые параметры профилировщика.

    В файле проекта .csproj убедитесь, что добавлены следующие строки:

    <ItemGroup>
        <PackageReference Include="Azure.Monitor.OpenTelemetry.AspNetCore" Version="[1.*-*, 2.0.0)" />
        <PackageReference Include="Azure.Monitor.OpenTelemetry.Profiler" Version="[1.*-*, 2.0.0)" />
    </ItemGroup>
    

    В вашем файле Program.cs убедитесь, что добавлены следующие строки:

    using Azure.Monitor.OpenTelemetry.AspNetCore;
    using Azure.Monitor.OpenTelemetry.Profiler;
    
    ///
    
    builder.Services.AddOpenTelemetry()
        .UseAzureMonitor()          // Enable Azure Monitor OpenTelemetry distro for ASP.NET Core
        .AddAzureMonitorProfiler(); // Add Azure Monitor Profiler    
    
  2. Сохраните и зафиксируйте внесенные изменения в локальном репозитории.

    git init
    git add .
    git commit -m "first commit"
    

Создание веб-приложения в Linux для размещения проекта

  1. На портале Azure найдите и выберите службы приложений, а затем выберите "Создать>веб-приложение".

  2. Создайте среду веб-приложения с помощью службы приложений в Linux.

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

  3. Перейдите к новому ресурсу веб-приложения. В меню слева выберите>Центр развертывания и выберите "Учетные данные FTPS ", чтобы создать учетные данные развертывания. Запишите учетные данные, которые будут использоваться позже.

    Снимок экрана: создание учетных данных развертывания.

  4. Нажмите кнопку "Сохранить".

  5. Перейдите на вкладку "Параметры ".

  6. Чтобы настроить локальный репозиторий Git в веб-приложении, выберите "Источник" и выберите "Локальный Git".

    Снимок экрана: просмотр параметров развертывания в раскрывающемся списке.

  7. Нажмите кнопку "Сохранить ", чтобы создать репозиторий Git с помощью URI клона Git.

    Снимок экрана: настройка локального репозитория Git.

    Дополнительные варианты развертывания см. в документации по службе приложений.

Развертывание проекта

Вы можете развернуть код в Службе приложений Azure различными способами. Самый простой способ — развернуть приложение с использованием локального Git. Дополнительные сведения см. в статье "Развертывание в службе приложений Azure" с помощью локальной службы Git.

  1. В окне командной строки перейдите к корневой папке проекта. Добавьте удаленный репозиторий Git, чтобы он указывал на репозиторий в службе приложений.

    git remote add azure https://<username>@<app_name>.scm.azurewebsites.net:443/<app_name>.git
    

    Для этого значения перейдите на страницу обзора веб-приложения. Скопируйте URL-адрес клона Git.

  2. Разверните проект, применив изменения в Azure с помощью команды push:

    git push azure main
    

Добавьте Application Insights, чтобы отслеживать ваше веб-приложение

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

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

  1. Скопируйте строку подключения.
  2. Вставьте строку подключения в среду.

Устранение неполадок

Если вы не можете найти следы приложения, попробуйте выполнить действия, описанные в этом руководстве по устранению неполадок.

Если вы не можете найти следы из вашего приложения, продолжите шаги, описанные в этом руководстве по устранению неполадок.

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