Habilitar o Profiler para aplicativos Web ASP.NET Core hospedados no Linux

Usando o Application Insights Profiler para .NET, você pode controlar quanto tempo é gasto em cada método de seus aplicativos Web ASP.NET Core ao vivo hospedados no Linux no Serviço de Aplicativo do Azure. Este artigo se concentra em aplicativos Web hospedados no Linux. Você também pode experimentar usando ambientes de desenvolvimento Linux, Windows e Mac.

Neste artigo, irá:

  • Configure e implante um aplicativo Web ASP.NET Core hospedado no Linux.
  • Adicione o Application Insights Profiler ao aplicativo Web ASP.NET Core.

Pré-requisitos

Configurar o projeto localmente

  1. Abra uma janela de prompt de comando em sua máquina.

  2. Crie um aplicativo Web MVC ASP.NET Core:

    dotnet new mvc -n LinuxProfilerTest
    
  3. Altere o diretório de trabalho para a pasta raiz do projeto.

  4. Adicione o pacote NuGet para coletar os rastreamentos do Profiler:

    dotnet add package Microsoft.ApplicationInsights.Profiler.AspNetCore
    
  5. No editor de código de sua preferência, habilite o Application Insights e o .NET Profiler no Program.cs. Adicione configurações personalizadas do Profiler, se aplicável.

    Para o WebAPI:

    // Add services to the container.
    builder.Services.AddApplicationInsightsTelemetry();
    builder.Services.AddServiceProfiler();
    

    Para o Worker:

    IHost host = Host.CreateDefaultBuilder(args)
        .ConfigureServices(services =>
        {
            services.AddApplicationInsightsTelemetryWorkerService();
            services.AddServiceProfiler();
    
            // Assuming Worker is your background service class.
            services.AddHostedService<Worker>();
        })
        .Build();
    
    await host.RunAsync();
    
  6. Salve e confirme suas alterações no repositório local:

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

Crie o aplicativo Web Linux para hospedar seu projeto

  1. No portal do Azure, crie um ambiente de aplicativo Web usando o Serviço de Aplicativo no Linux.

    Captura de tela que mostra a criação do aplicativo Web Linux.

  2. Vá para o novo recurso do aplicativo Web e selecione Credenciais FTPS do Centro>de Implantação para criar as credenciais de implantação. Anote suas credenciais para usar mais tarde.

    Captura de tela que mostra a criação das credenciais de implantação.

  3. Selecione Guardar.

  4. Selecione o separador Definições.

  5. Na lista suspensa, selecione Git local para configurar um repositório Git local no aplicativo Web.

    Captura de tela que mostra as opções de exibição de implantação em uma lista suspensa.

  6. Selecione Salvar para criar um repositório Git com um URI de clone do Git.

    Captura de tela que mostra a configuração do repositório Git local.

    Para obter mais opções de implantação, consulte a documentação do Serviço de Aplicativo.

Implante seu projeto

  1. Na janela do prompt de comando, navegue até a pasta raiz do seu projeto. Adicione um repositório remoto Git para apontar para o repositório no Serviço de Aplicativo:

    git remote add azure https://<username>@<app_name>.scm.azurewebsites.net:443/<app_name>.git
    
    • Use o nome de usuário que você usou para criar as credenciais de implantação.
    • Use o nome do aplicativo que você usou para criar o aplicativo Web usando o Serviço de Aplicativo no Linux.
  2. Implante o projeto enviando as alterações por push para o Azure:

    git push azure main
    

    Você deve ver uma saída semelhante ao exemplo a seguir:

    Counting objects: 9, done.
    Delta compression using up to 8 threads.
    Compressing objects: 100% (8/8), done.
    Writing objects: 100% (9/9), 1.78 KiB | 911.00 KiB/s, done.
    Total 9 (delta 3), reused 0 (delta 0)
    remote: Updating branch 'main'.
    remote: Updating submodules.
    remote: Preparing deployment for commit id 'd7369a99d7'.
    remote: Generating deployment script.
    remote: Running deployment command...
    remote: Handling ASP.NET Core Web Application deployment.
    remote: ......
    remote:   Restoring packages for /home/site/repository/EventPipeExampleLinux.csproj...
    remote: .
    remote:   Installing Newtonsoft.Json 10.0.3.
    remote:   Installing Microsoft.ApplicationInsights.Profiler.Core 1.1.0-LKG
    ...
    

Adicionar o Application Insights para monitorar seu aplicativo Web

Você tem três opções para adicionar o Application Insights ao seu aplicativo Web:

  • Usando o painel Application Insights no portal do Azure.
  • Usando o painel Configuração no portal do Azure.
  • Adicionando manualmente às configurações do seu aplicativo Web.
  1. No seu aplicativo Web no portal do Azure, selecione Application Insights no painel esquerdo.

  2. Selecione Ativar Application Insights.

    Captura de tela que mostra a ativação do Application Insights.

  3. Em Application Insights, selecione Ativar.

    Captura de tela que mostra a ativação do Application Insights.

  4. Em Vincular a um recurso do Application Insights, crie um novo recurso ou selecione um recurso existente. Para este exemplo, criamos um novo recurso.

    Captura de tela que mostra vinculando o Application Insights a um recurso novo ou existente.

  5. Selecione Aplicar Sim> para aplicar e confirmar.

Próximos passos