Habilitar o OpenTelemetry do Azure Monitor para aplicativos .NET, Node.js, Python e Java
Este artigo descreve como habilitar e configurar a coleta de dados baseada em OpenTelemetry no Application Insights. Distribuições do OpenTelemetry do Azure Monitor:
- Fornece uma distribuição do OpenTelemetry que inclui suporte para recursos específicos do Azure Monitor.
- Habilita telemetria automática, incluindo bibliotecas de instrumentação OpenTelemetry para coletar rastreamentos, métricas, logs e exceções.
- Permite coletar telemetria personalizada.
- Oferece suporte ao recurso Live Metrics para monitorar e coletar mais telemetria de aplicativos Web ao vivo e em produção.
Para obter mais informações sobre as vantagens de usar a Distribuição do OpenTelemetry do Azure Monitor, consulte Por que devo usar a Distribuição do OpenTelemetry do Azure Monitor.
Para saber mais sobre como coletar dados usando o OpenTelemetry, confira Noções básicas de coleta de dados ou as Perguntas frequentes sobre o OpenTelemetry.
Status de versão do OpenTelemetry
As ofertas do OpenTelemetry estão disponíveis para aplicativos .NET, Node.js, Python e Java. Para obter um status de versão de recurso por recurso, confira as Perguntas frequentes.
Habilitar o OpenTelemetry com o Application Insights
Siga as etapas nesta seção para instrumentar seu aplicativo com o OpenTelemetry. Selecione uma guia para instruções específicas a um idioma.
Observação
O .NET aborda vários cenários, incluindo ASP.NET clássico, aplicativos de console, Windows Forms (WinForms) e muito mais.
Pré-requisitos
- Assinatura do Azure: crie uma assinatura do Azure gratuitamente
- Recurso do Application Insights: criar um recurso do Application Insights
- Aplicativo ASP.NET Core que usa uma versão com suporte oficial do .NET
Dica
Se você estiver migrando da API Clássica do Application Insights, consulte nossa documentação de migração.
Instalar a biblioteca de clientes
Instale o pacote Azure.Monitor.OpenTelemetry.AspNetCore
NuGet mais recente:
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Modificar o aplicativo
Importe o Azure.Monitor.OpenTelemetry.AspNetCore
namespace, adicione o OpenTelemetry e configure-o para usar o Azure Monitor em sua program.cs
classe:
// Import the Azure.Monitor.OpenTelemetry.AspNetCore namespace.
using Azure.Monitor.OpenTelemetry.AspNetCore;
var builder = WebApplication.CreateBuilder(args);
// Add OpenTelemetry and configure it to use Azure Monitor.
builder.Services.AddOpenTelemetry().UseAzureMonitor();
var app = builder.Build();
app.Run();
Copiar a cadeia de conexão do seu recurso do Application Insights
A cadeia de conexão é exclusiva e especifica para onde as Distribuições do OpenTelemetry do Azure Monitor enviam a telemetria coletada.
Dica
Se você ainda não tem um recurso do Application Insights, crie um seguindo este guia. Recomendamos que você crie um novo recurso em vez de usar um recurso existente.
Para copiar a cadeia de conexão:
- Acesse o painel Visão geral do recurso Application Insights.
- Encontre sua cadeia de conexão.
- Passe o mouse sobre a cadeia de conexão e selecione o ícone Copiar para a área de transferência.
Cole a cadeia de conexão em seu ambiente
Para colar sua cadeia de conexão, selecione uma das opções a seguir:
Importante
Recomendamos definir a cadeia de conexão por meio de código somente em ambientes de desenvolvimento e teste locais.
Para produção, use uma variável de ambiente ou arquivo de configuração (somente Java).
Definir por meio de variável de ambiente - recomendado
Substitua
<Your connection string>
no comando a seguir por sua cadeia de conexão.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
Definir por meio de arquivo de configuração - somente Java
Crie um arquivo de configuração chamado
applicationinsights.json
e coloque-o no mesmo diretório queapplicationinsights-agent-3.6.2.jar
com o seguinte conteúdo:{ "connectionString": "<Your connection string>" }
Substitua
<Your connection string>
no JSON anterior por sua cadeia de conexão exclusiva.Definir por meio de código - ASP.NET Core, Node.js e Python somente
Consulte configuração da cadeia de conexão para, por exemplo, definir a cadeia de conexão por meio de código.
Observação
Se você definir a cadeia de conexão em vários locais, a variável de ambiente será priorizada na seguinte ordem:
- Código
- Variável de ambiente
- Arquivo de configuração
Confirmar se os dados estão fluindo
Abra o seu aplicativo e, em seguida, abra o Application Insights no portal do Azure. Pode levar alguns minutos para os dados aparecerem.
Agora, o Application Insights está habilitado para seu aplicativo. As etapas a seguir são opcionais e permitem uma personalização adicional.
Importante
Se você tem dois ou mais serviços que emitem telemetria para o mesmo recurso do Application Insights, precisa definir Nomes de Função de Nuvem para representá-los corretamente no Mapa do Aplicativo.
Como parte do uso da instrumentação do Application Insights, coletamos e enviamos dados de diagnóstico para a Microsoft. Esses dados nos ajudam a executar e a aprimorar o Application Insights. Para saber mais, confira Statsbeat no Azure Application Insights.
Aplicativos de exemplo
Os aplicativos de exemplo do OpenTelemetry do Azure Monitor estão disponíveis para todos os idiomas com suporte:
- Aplicativo de exemplo do ASP.NET Core
- Aplicativo de exemplo do NET
- Aplicativos de exemplo do Java
- Aplicativos de exemplo nativos do Java GraalVM
- Aplicativo de exemplo do Node.js
- Aplicativos de exemplo do Python
Próximas etapas
- Para mais detalhes sobre como adicionar e modificar o OpenTelemetry do Azure Monitor, confira Adicionar e modificar o OpenTelemetry do Azure Monitor.
- Para configurar ainda mais a Distribuição do OpenTelemetry, confira Configuração do OpenTelemetry do Azure Monitor.
- Para revisar o código-fonte, acesse o repositório do GitHub AspNetCore do Azure Monitor.
- Para instalar o pacote NuGet, verificar se há atualizações ou exibir as notas de versão, consulte a página Pacote NuGet AspNetCore do Azure Monitor.
- Para se familiarizar com o Application Insights do Azure Monitor e o OpenTelemetry, confira o Aplicativo de exemplo do Azure Monitor.
- Para saber mais sobre o OpenTelemetry e a respectiva comunidade, confira o Repositório GitHub do .NET do OpenTelemetry.
- Para habilitar experiências de usuário, habilite o monitoramento de usuário de navegador ou da Web.
- Para revisar perguntas frequentes, etapas de solução de problemas, opções de suporte ou fornecer comentários do OpenTelemetry, confira a ajuda, o suporte e os comentários do OpenTelemetry para o Azure Monitor Application Insights.