Usando OpenTelemetry no .NET Aspire

Concluído

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.

Captura de tela mostrando a página Rastreamentos no painel do .NET Aspire .

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