Configurando o rastreamento d.NET em Linux ou Alpine Linux

Você pode configurar o rastreamento d.NET em Linux usando Instana AutoTrace ou configurando manualmente as variáveis de ambiente. No sensor .NET Core 1.0.56 e versões posteriores, .NET, o Tracer oferece suporte ao rastreamento automático do host em sistemas Linux, exceto em contêineres.

Para obter mais detalhes sobre o funcionamento do monitoramento do .NET, consulte Como funciona o monitoramento do .NET.

Executando aplicativos do `.NET ` no ` Linux `

Se você não estiver familiarizado com a implantação de aplicativos do .NET no Linux, siga estas etapas para configurar e executar seu aplicativo.

Passo 1: Instalar o SDK d.NET

Dependendo das suas necessidades, você pode instalar o SDK do .NET em um dos seguintes ambientes:

  • WSL (Subsistema do Windows para o Linux ): Para desenvolvimento e depuração
  • Linux máquina: Para ambientes de produção

Para instalar o SDK do .NET 8.0 no Ubuntu 22.04, execute o seguinte comando:

wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y dotnet-sdk-8.0

Passo 2: Execute o aplicativo ".NET "

Você pode executar seu aplicativo .NET usando um dos seguintes métodos:

  • Execução direta:

    dotnet run --project /home/username/Applications/WebAPI.Linux/WebAPI.Linux.csproj
  • Execute o Kestrel: Go para a Publish pasta e execute a DLL:

    cd /home/username/Publish/WebAPI.Linux
    dotnet WebAPI.Linux.dll

Ativando o rastreamento d.NET

Ative o rastreamento do `.NET ` no ` Linux ` usando um dos seguintes métodos:

Método 1: Ativando o rastreamento automático

Com o Instana, AutoTrace, e Instana, o sistema detecta e instrumenta automaticamente sua aplicação .NET. Você não precisa alterar nenhum código.

Para ativar o Instana AutoTrace,, siga estas etapas:

  1. Após instalar o agente do host, inicie o agente.
  2. Inicie o aplicativo ".NET ".

Durante a inicialização da descoberta, o sensor ativa automaticamente o rastreamento. Não é necessário injetar manualmente o pacote ` NuGet ` nem compilar o aplicativo.

Durante o processo de descoberta, o instana_dotnet_global_env.sh arquivo é criado. Este arquivo contém as variáveis de ambiente necessárias para o rastreamento d.NET Core.

Para verificar se o rastreamento está funcionando, faça login no painel do Instana. É possível ver os traços surgindo.

Método 2: Ativando o rastreamento manualmente

Use este método se não quiser utilizar o rastreamento automático ou se precisar de mais controle sobre a configuração. Essa abordagem envolve adicionar pacotes d NuGet s à sua aplicação.

Rastreamento de aplicativos em execução no Linux (exceto Alpine Linux )

Para ativar o rastreamento manualmente em um aplicativo do .NET Core em execução no Linux, siga estas etapas:

  1. Após instalar o agente do host, instale os seguintes pacotes em seu aplicativo:

    Quando os pacotes são distribuídos pelo site NuGet.org, você pode instalá-los sem precisar recompilar o aplicativo. Use um dos seguintes métodos:

    • nuget.exe Disponível: Restaure os pacotes usando nuget.exe sem compilar o projeto a ser instrumentado.
    • nuget.exe indisponível: Baixe os pacotes diretamente, extraia-os e, em seguida, defina as variáveis de ambiente para que apontem para os arquivos extraídos, conforme descrito na etapa a seguir.
    Observação: Selecione o pacote de reescrita adequado de acordo com a arquitetura do seu sistema. Você pode adicionar o Instana.Tracing.Core.Rewriter.Linux pacote ao seu projeto ou adicioná-lo antes da publicação.
  2. Defina as seguintes variáveis de ambiente no Web.config arquivo da sua aplicação antes de iniciar o processo:

    DOTNET_STARTUP_HOOKS=[path-to-your-app]/Instana.Tracing.Core.dll
    CORECLR_ENABLE_PROFILING=1
    CORECLR_PROFILER={cf0d821e-299b-5307-a3d8-b283c03916dd}
    CORECLR_PROFILER_PATH=[Path_to_your_app]/instana_tracing/CoreProfiler.so

    Substitua [path-to-your-app] pelo caminho real para o diretório do seu aplicativo.

  3. Se sua aplicação estiver sendo executada dentro de um contêiner, defina as variáveis de ambiente do agente para que o Tracer do .NET saiba onde procurar o agente e enviar spans em tempo de execução:

    INSTANA_AGENT_HOST=[address_where_the_agents_listens_and_is_reachable_from_inside_the_container]
    INSTANA_AGENT_PORT=42699

    Use uma porta diferente, caso a configuração seja outra.

Rastreando aplicativos em execução no Alpine Linux

Para ativar o rastreamento de aplicativos em execução no Alpine Linux, siga estas etapas:

  1. Após instalar o agente do host, instale os seguintes pacotes em seu aplicativo:

    Nota:
    • Se os pacotes estiverem disponíveis em NuGet.org, você pode baixá-los usando o nuget.exe arquivo, se houver, sem precisar compilar o projeto. Como alternativa, você pode baixar esses pacotes manualmente, descompactá-los e, em seguida, definir as variáveis de ambiente para que apontem para os arquivos descompactados, conforme descrito na etapa a seguir.
    • Selecione o pacote de reescrita adequado de acordo com a arquitetura do seu sistema. Você pode adicionar o Instana.Tracing.Core.Rewriter.Windows pacote ao seu projeto ou adicioná-lo antes da publicação.
  2. Defina as seguintes variáveis de ambiente antes de iniciar o processo:

    DOTNET_STARTUP_HOOKS=[path-to-your-app]/Instana.Tracing.Core.dll
    CORECLR_ENABLE_PROFILING=1
    CORECLR_PROFILER={cf0d821e-299b-5307-a3d8-b283c03916dd}
    CORECLR_PROFILER_PATH=[Path_to_your_app]/instana_tracing/CoreProfiler.so
  3. Se sua aplicação estiver sendo executada dentro de um contêiner, defina as variáveis de ambiente do agente:

    INSTANA_AGENT_HOST=[address_where_the_agents_listens_and_is_reachable_from_inside_the_container]
    INSTANA_AGENT_PORT=42699