Habilitar o Azure Monitor OpenTelemetry 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. A Distro OpenTelemetry do Azure Monitor:
- Fornece uma distribuição OpenTelemetry que inclui suporte para recursos específicos do Azure Monitor.
- Permite a telemetria automática incluindo bibliotecas de instrumentação OpenTelemetry para coletar rastreamentos, métricas, logs e exceções.
- Permite coletar telemetria personalizada .
- Suporta métricas em tempo real para monitorar e coletar mais telemetria de aplicativos Web em tempo real em produção.
Para obter mais informações sobre as vantagens de usar a Distro OpenTelemetry do Azure Monitor, consulte Por que devo usar a Distro OpenTelemetry do Azure Monitor.
Para saber mais sobre como coletar dados usando OpenTelemetry, confira Noções básicas de coleta de dados ou as Perguntas frequentes sobre OpenTelemetria.
Status da versão do OpenTelemetry
As ofertas OpenTelemetry estão disponíveis para aplicativos .NET, Node.js, Python e Java. Para obter um status de versão recurso por recurso, consulte as Perguntas frequentes.
Habilite o OpenTelemetry com o Application Insights
Siga as etapas nesta seção para instrumentar seu aplicativo com OpenTelemetry. Selecione uma guia para instruções específicas do idioma.
Nota
O .NET abrange vários cenários, incluindo ASP.NET clássico, aplicativos de console, Windows Forms (WinForms) e muito mais.
Pré-requisitos
- Subscrição do Azure: crie uma subscrição do Azure gratuitamente
- Recurso do Application Insights: Criar um recurso do Application Insights
- ASP.NET Core Application usando uma versão oficialmente suportada do .NET
Gorjeta
Se você estiver migrando da API do Application Insights Classic, consulte nossa documentação de migração.
Instalar a biblioteca de cliente
Instale o pacote NuGet mais recente:Azure.Monitor.OpenTelemetry.AspNetCore
dotnet add package Azure.Monitor.OpenTelemetry.AspNetCore
Modificar a sua candidatura
Importe o namespace, adicione OpenTelemetry e configure-o para usar o Azure.Monitor.OpenTelemetry.AspNetCore
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();
Copie a cadeia de conexão do recurso do Application Insights
A cadeia de conexão é exclusiva e especifica para onde a Distro OpenTelemetry do Azure Monitor envia a telemetria coletada.
Gorjeta
Se você ainda não tiver um recurso do Application Insights, crie um seguindo este guia. Recomendamos que você crie um novo recurso em vez de usar um existente.
Para copiar a cadeia de conexão:
- Vá para o painel Visão geral do recurso do Application Insights.
- Encontre sua cadeia de conexão.
- Passe o cursor 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 a cadeia de conexão, selecione uma das seguintes opções:
Importante
Recomendamos definir a cadeia de conexão através do código somente em ambientes locais de desenvolvimento e teste.
Para produção, use uma variável de ambiente ou arquivo de configuração (somente Java).
Definir através da variável - de ambiente recomendada
Substitua
<Your connection string>
no comando a seguir pela cadeia de conexão.APPLICATIONINSIGHTS_CONNECTION_STRING=<Your connection string>
Definir apenas através do ficheiro de - configuração 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>
o JSON anterior por sua cadeia de conexão exclusiva.Definir apenas por código - ASP.NET Core, Node.js e Python
Consulte Configuração da cadeia de conexão para obter um exemplo de configuração da cadeia de conexão via código.
Nota
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 que os dados estão fluindo
Execute seu aplicativo e abra o Application Insights no portal do Azure. Pode levar alguns minutos para que os dados apareçam.
O Application Insights agora está habilitado para seu aplicativo. As etapas a seguir são opcionais e permitem mais personalização.
Importante
Se você tiver dois ou mais serviços que emitem telemetria para o mesmo recurso do Application Insights, será necessário definir Nomes de Função na 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 melhorar o Application Insights. Para saber mais, consulte Statsbeat no Azure Application Insights.
Exemplos de aplicações
Os aplicativos de exemplo do Azure Monitor OpenTelemetry estão disponíveis para todos os idiomas suportados:
- Aplicativo de exemplo do ASP.NET Core
- NET aplicativo de exemplo
- Aplicativos de exemplo Java
- Aplicativos de exemplo nativos do Java GraalVM
- Node.js aplicativo de exemplo
- Aplicativos de exemplo Python
Próximos passos
- Para obter detalhes sobre como adicionar e modificar o Azure Monitor OpenTelemetry, consulte Adicionar e modificar o Azure Monitor OpenTelemetry.
- Para configurar ainda mais a distro OpenTelemetry , consulte Configuração do Azure Monitor OpenTelemetry .
- Para revisar o código-fonte, consulte o repositório GitHub do Azure Monitor AspNetCore.
- Para instalar o pacote NuGet, verificar se há atualizações ou exibir notas de versão, consulte a página Pacote NuGet do Azure Monitor AspNetCore.
- Para se familiarizar com o Azure Monitor e o OpenTelemetry, consulte o Aplicativo de exemplo do Azure Monitor.
- Para saber mais sobre o OpenTelemetry e sua comunidade, consulte o repositório OpenTelemetry .NET GitHub.
- Para habilitar experiências de uso, habilite o monitoramento de usuários da Web ou do navegador.
- Para revisar perguntas frequentes, etapas de solução de problemas, opções de suporte ou fornecer comentários sobre o OpenTelemetria, consulte Ajuda, suporte e comentários do OpenTelemetry para o Azure Monitor Application Insights.