Usando OpenTelemetry no .NET Aspire
O .NET Aspire ajuda-o a registar o comportamento de uma aplicação nativa da nuvem ao incluir automaticamente o suporte OpenTelemetry quando cria um projeto .NET Aspire .
Imagine que trabalha para um retalhista de equipamento exterior. Você decidiu que deseja gravar dados de telemetria. Agora você quer descobrir como o .NET Aspire ajuda com a telemetria.
Nesta unidade, você aprenderá sobre a integração entre o .NET Aspire e as APIs OpenTelemetria.
.NET Aspire e OpenTelemetry
Um objetivo principal no design e implementação do .NET Aspire é garantir que os aplicativos nativos da nuvem sejam fáceis de monitorar e solucionar problemas. O .NET Aspire simplifica a garantia de que o aplicativo completo seja observável e totalmente instrumentado usando as APIs do OpenTelemetry e configurando automaticamente as fontes de dados de telemetria sempre que você criar um novo aplicativo a partir dos modelos ou adicionar um aplicativo existente à orquestração do .NET Aspire .
As integrações do .NET Aspire também têm suporte integrado para telemetria.
O .NET Aspire fornece o painel do .NET Aspire quando você depura localmente. Essa interface da Web inclui ferramentas avançadas que exibem logs, métricas em formatos gráficos e rastreamentos em linhas do tempo.
Configuração do OpenTelemetry no .NET Aspire
O código que adiciona e configura OpenTelemetry em uma solução .NET Aspire está no projeto ServiceDefaults . No arquivo Extensions.cs você encontra:
- O
ConfigureOpenTelemetry()
método, que adiciona serviços de registro, métricas e rastreamento. - O
AddOpenTelemetryExporters()
método, que adiciona exportadores de protocolo OpenTelemetry (OTLP). - O
AddBuiltInMeters()
método, que adiciona todas as métricas que são incorporadas no .NET.
A menos que você queira adicionar outros exportadores ou métricas, você pode deixar esse código como está.
Você deve estender esse código quando quiser:
- Adicione fontes adicionais de métricas ou dados de rastreamento distribuídos, como métricas personalizadas.
- Adicione exportadores para enviar dados de telemetria para um sistema de Application Performance Management (APM), como o Application Insights ou o Grafana.
Exportando telemetria
O OpenTelemetry pode exportar os dados que registra para diferentes ferramentas, para que você possa escolher aquele que suporta a análise de que precisa.
Os destinos comuns de exportação de telemetria incluem:
- O painel de instrumentos do Aspir. Você aprenderá mais sobre o painel mais adiante neste módulo.
- Outras ferramentas de Application Performance Management (APM) como Prometheus e Grafana.
- Azure Application Insights. Esse recurso do Azure Monitor pode analisar e exibir dados de comportamento de várias fontes, tanto no Azure quanto de outras fontes, como aplicativos nativos da nuvem.
Mais informações
- Telemetria do .NET Aspire
- Observabilidade .NET com OpenTelemetry
- Criação de métricas personalizadas
- Adicionando instrumentação de rastreamento distribuído