Noções básicas da Coleta de Dados do Application Insights do Azure Monitor
Antes de monitorar seu aplicativo, ele precisa ser instrumentado.
Nas seções a seguir, abordamos algumas noções básicas de coleta de dados do Application Insights do Azure Monitor.
Opções de instrumentação
Em um nível básico, a "instrumentação" está simplesmente permitindo que um aplicativo capture telemetria.
Existem dois métodos para instrumentar seu aplicativo:
- A instrumentação automática (instrumentação automática )
- Instrumentação manual
A instrumentação automática permite a coleta de telemetria por meio da configuração sem tocar no código do aplicativo. Embora seja mais conveniente, ela tende a ser menos configurável. Ele também não está disponível em todas as linguagens de programação. Consulte Ambientes e idiomas compatíveis com a instrumentação automática. Quando a instrumentação automática está disponível, essa é a maneira mais fácil de habilitar o Application Insights do Azure Monitor.
A instrumentação manual é codificada na API do Application Insights ou da OpenTelemetry. No contexto de um usuário, isso geralmente se refere à instalação de um SDK específico a uma linguagem em um aplicativo. Isso significa que você precisa gerenciar as atualizações para a versão mais recente do pacote por conta própria. Você pode usar essa opção se precisar fazer chamadas de dependência personalizadas ou chamadas de API que não são capturadas por padrão com a instrumentação automática. Há duas opções de instrumentação manual:
Embora vejamos a OpenTelemetry como nossa direção futura, não pretendemos parar de coletar dados de SDKs mais antigos. Ainda temos um caminho a percorrer antes que as Distribuições do Azure OpenTelemetry alcancem a paridade de recursos com os SDKs do Application Insights. Em muitos casos, os clientes continuam optando por usar os SDKs do Application Insights por algum tempo.
Importante
"Manual" não significa que você precisará escrever um código complexo para definir intervalos para rastreamentos distribuídos (embora continue sendo uma opção). As bibliotecas de instrumentação empacotadas em nossas Distribuições permitem que você capture sem esforço sinais de telemetria entre estruturas e bibliotecas comuns. Estamos trabalhando ativamente para instrumentar os SDKs de Serviço do Azure mais populares por meio da OpenTelemetry para que esses sinais estejam disponíveis para clientes que usam a Distribuição da OpenTelemetry do Azure Monitor.
Tipos de telemetria:
A telemetria, os dados coletados para observar seu aplicativo, podem ser divididos em três tipos ou "pilares":
- Rastreamento distribuído
- Métricas
- Logs
Uma história de observabilidade completa inclui todos os três pilares, e o Application Insights divide ainda mais esses pilares em tabelas com base em nosso modelo de dados. Nossas SDKs do Application Insights ou Distribuições da OpenTelemetry do Azure Monitor incluem tudo o que você precisa para potencializar o Monitoramento de Desempenho de Aplicativos no Azure. A instalação do pacote em si é gratuita e você paga somente pelos dados que ingere no Azure Monitor.
As seguintes fontes explicam os três pilares:
- Site da comunidade OpenTelemetry
- Especificações do OpenTelemetry
- Observabilidade de sistemas distribuídos por Cindy Sridharan
Roteamento de Telemetria
Também há duas maneiras de enviar seus dados para o Azure Monitor (ou qualquer fornecedor):
- Por meio de um exportador direto
- Por meio de um agente
Um exportador direto envia telemetria em processo (do código do aplicativo) diretamente para o ponto de extremidade de ingestão do Azure Monitor. A principal vantagem dessa abordagem é a simplicidade de integração.
As SDKs do Application Insights e as Distribuições da OpenTelemetry do Azure Monitor atualmente disponíveis dependem de um exportador direto.
Observação
Para obter a posição do Azure Monitor no OpenTelemetry-Collector, confira as Perguntas Frequentes do OpenTelemetry.
Dica
Se você estiver planejando usar o OpenTelemetry-Collector para amostragem ou processamento de dados adicionais, talvez seja possível obter esses mesmos recursos internos para o Azure Monitor. Os clientes que migraram para o Appplication Insights baseado em workspace podem se beneficiar de Transformações no tempo de ingestão. Para habilitar, siga os detalhes no tutorial, ignorando a etapa que mostra como definir uma configuração de diagnóstico, pois com o Application Insights centrado no workspace isso já está configurado. Se você estiver filtrando menos de 50% do volume geral, não haverá custo adicional. Após 50%, há um custo, mas muito menor do que o preço padrão por GB.
OpenTelemetry
A Microsoft está empolgada em adotar o OpenTelemetry como o futuro da instrumentação de telemetria. Você, nossos clientes, pediu instrumentação neutra para fornecedores e temos o prazer de fazer parceria com a comunidade OpenTelemetry para criar APIs e SDKs consistentes entre idiomas.
A Microsoft trabalhou em conjunto com partes interessadas do projeto de dois projetos populares de telemetria de software livre, OpenCensus e OpenTracing. Juntos, ajudamos a criar um projeto, o OpenTelemetry. O OpenTelemetry inclui contribuições de todos os principais fornecedores de APM (Gerenciamento de Desempenho de Aplicativos) e de nuvem e fica na CNCF (nuvem Native Computing Foundation). A Microsoft é um membro Platinum do CNCF.
Para terminologia, consulte o glossário nas especificações do OpenTelemetry.
Alguns termos herdados no Application Insights são confusos, devido à convergência do setor em OpenTelemetry. A tabela a seguir destaca essas diferenças. Os termos do OpenTelemetry estão substituindo os termos do Application Insights.
Application Insights | OpenTelemetry |
---|---|
Coletores automático | Bibliotecas de instrumentação |
Canal | Exportador |
Baseado em Agente/sem código | Instrumentação automática |
Rastreamentos | Logs |
Requests | Intervalos de servidor |
Dependências | Outros tipos de intervalo (cliente, interno etc.) |
ID da Operação | ID de rastreamento |
ID ou ID Pai da Operação | ID do Intervalo |
Perguntas frequentes
Onde posso encontrar uma lista de versões do SDK do Application Insights e respectivos nomes?
Uma lista de versões e nomes do SDK está hospedada no GitHub. Para obter mais informações, confira a Versão do SDK.
Próximas etapas
Selecione sua abordagem de habilitação:
- Instrumentação automática
- SDKs do Application Insights
- Distribuições da OpenTelemetry do Azure Monitor.
Consulte as Perguntas frequentes sobre o Application Insights do Azure Monitor e as Perguntas frequentes sobre o OpenTelemetry para obter mais informações.