• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

Introdução ao OpenTelemetry com New Relic

OpenTelemetry é um kit de ferramentas que você pode usar para coletar dados de telemetria de seu aplicativo e hosts e depois exportar esses dados para o New Relic. Depois que os dados estiverem no New Relic, você poderá usar a plataforma New Relic para analisar os dados e resolver problemas do aplicativo.

OpenTelemetry possui recursos que se sobrepõem ao agente New Relic, portanto revise as informações abaixo para ver se isso o ajudará a atingir seus objetivos de telemetria. Se você já conhece o OpenTelemetry e deseja começar, consulte nossas instruções de configuração .

Aqui estão alguns tópicos para ajudá-lo a se familiarizar com o OpenTelemetry:

Benefícios do OpenTelemetry

OpenTelemetry fornece uma especificação segura e independente de fornecedores para instrumentação de serviço e host para que você possa exportar dados para backends distintos de sua escolha, como New Relic. OpenTelemetry oferece um conjunto único de API e biblioteca que padroniza como você coleta e transfere dados de telemetria para seus serviços e hosts.

Os seguintes componentes compõem o projeto OpenTelemetry:

  • Especificações para os principais pilares da observabilidade para impulsionar a consistência em todos os projetos. New Relic suporta todos estes sinais: trace, métrica e log (veja detalhes abaixo)
  • API que contém interfaces e implementações baseadas nas especificações SDKs (implementações de referência da API) criadas especificamente para linguagens como Java, Python, Go, Erlang e mais
  • Coletor que oferece uma implementação independente de fornecedor para processamento e exportação
  • Exportadores que permitem enviar dados para um backend de sua escolha

Os componentes do OpenTelemetry trabalham juntos para criar algumas vantagens distintas para a captura de dados de telemetria:

Recurso

Descrição

Instrumentação onipresente

Um padrão único e aberto de instrumentação proporciona melhor cobertura e flexibilidade à medida que engenheiros de todo o mundo contribuem para a instrumentação.

À prova de futuro

À medida que a instrumentação é incorporada à biblioteca e à estrutura, e à medida que mais fornecedores passam a oferecer suporte a esse padrão aberto, você pode ter certeza de que não precisará alterar sua instrumentação.

Suporte para tecnologias mais recentes

Quando novas tecnologias surgem, os contribuidores podem construir integração no OpenTelemetry ou adicionar instrumentação diretamente ao código-fonte, garantindo que o usuário final possa monitor facilmente essas novas tecnologias.

Escolha simplificada

Você não precisa decidir qual opção de instrumentação usar (uma opção proprietária ou um dos outros padrões abertos).

Compatibilidade entre plataformas

OpenTelemetry oferece suporte a uma variedade de idiomas e back-end. Representa um caminho independente de fornecedores para capturar e transmitir telemetria para backend sem alterar a instrumentação existente.

Observabilidade simplificada

É mais fácil para os fornecedores oferecer suporte e testar em um único padrão, pois eles não precisam desenvolver seu próprio agente ou coletor.

Alta dimensionalidade

OpenTelemetry usa métricas dimensionais, para que você possa filtrar e facetar mais aspectos dos dados, como regiões AWS, cluster do Kubernetes ou versões de serviço. As métricas dimensionais também levam a menos tempo entre a ocorrência e o relato.

Devo usar a instrumentação OpenTelemetry ou o agente New Relic?

Ao considerar o OpenTelemetry, você também pode estar olhando para o agente New Relic que também captura dados de telemetria.

Como seria de esperar, há muita sobreposição entre os recursos disponíveis no agente OpenTelemetry e SDKs versus aqueles disponíveis no agente New Relic. Isto é especialmente verdadeiro se você estiver interessado em dados de telemetria distributed tracing . A escolha que você faz depende do que você precisa.

Recomendamos que você explore a instrumentação do New Relic e do OpenTelemetry. As informações nesta seção apresentam alguns conceitos amplos para você considerar e, se quiser observar as diferenças mais de perto, consulte nossa comparação detalhada. Além disso, você pode discutir isso em nosso canal CNCF Slack, #otel-newrelic para decidir o que funciona melhor para você. Talvez você precise primeiro se inscrever na conta Slack da CNCF aqui.

OpenTelemetry: um trabalho em andamento

OpenTelemetry ainda é um padrão emergente, portanto suas escolhas podem ser afetadas pelo que está disponível. Você pode verificar o estado atual da especificação no site OpenTelemetry.

O estado atual da API e dos SDKs do OpenTelemetry específicos da linguagem varia: algumas linguagens ainda são pré-alfa e podem não ter instruções sobre como instrumentar seu serviço. A maioria das linguagens possui alguma implementação de rastreamento que é suficiente para iniciar a exportação de dados para o New Relic. Confira esta tabela no GitHub que fornece uma visão geral do estado de conformidade com as especificações OpenTelemetry para cada linguagem.

Para idiomas onde a New Relic não fornece atualmente um agente ou SDK, o OpenTelemetry pode oferecer uma boa alternativa. Além disso, nos casos em que você deseja controle explícito sobre a amostragem dos seus dados de telemetria, o OpenTelemetry oferece muita flexibilidade.

À medida que o OpenTelemetry amadurece, continuaremos a oferecer suporte a novos modelos de dados OpenTelemetry e a fornecer experiências de interface selecionadas em nossa plataforma.

Agente New Relic

Em geral, o e o agente de infraestrutura da New Relic coletarão mais dados de telemetria para seus serviços e hosts. Além disso, eles oferecem uma ampla gama de opções de configuração e um amplo conjunto de recursos de instrumentação automática.

O agente APM da New Relic oferece visibilidade detalhada do rastreamento da transação para serviços individuais. Eles também oferecem amostragem predefinida para equilibrar o impacto no desempenho da sua instrumentação com a necessidade de capturar dados suficientes para obter insights úteis.

Importante

Running New Relic agents and OpenTelemetry tooling in the same process

O agente New Relic e as ferramentas OpenTelemetry (SDKs, agente, etc.) estão entre os muitos produtos APM no mercado.

Para uma determinada linguagem, quase todos os produtos APM operam usando a mesma linguagem de baixo nível e ganchos de tempo de execução disponíveis – a maioria dos quais altera o comportamento do seu código em tempo de execução. Dependendo da arquitetura da sua linguagem, isso geralmente é obtido por meio de técnicas como manipulação de código de bytes ou patching de macaco.

Devido às formas complexas pelas quais os produtos APM alteram o código em execução, não há garantias de que um produto será compatível com outro produto em execução no mesmo processo. Na melhor das hipóteses, eles viverão lado a lado sem o conhecimento do outro e gerarão telemetria de forma independente a partir do seu aplicativo. Na pior das hipóteses, eles pisarão uns nos outros, levando a um comportamento imprevisível.

A New Relic não pode garantir que nosso agente APM seja compatível com um produto APM diferente em execução no mesmo processo. Recomendamos que você escolha aquele – e único – que melhor atende às suas necessidades.

Como o OpenTelemetry funciona com o New Relic

A New Relic oferece suporte ao OpenTelemetry Protocol (OTLP) nativo para exportar dados de telemetria. Isso permite que você use os componentes de independência de fornecedores desenvolvidos pela comunidade OpenTelemetry para exportar seus dados para o New Relic.

As tabelas nas seções abaixo mostram os recursos suportados para cada sinal de telemetria. Se você tiver alguma dúvida sobre os detalhes nas seções abaixo ou casos de uso não suportados, entre em contato conosco em nosso canal CNCF Slack e observe esta página para atualizações futuras. Se você preferir ter uma visão geral de uma implementação com New Relic, consulte nossa arquitetura de referência.

Importante

Os exportadores da New Relic para OpenTelemetry agora estão obsoletos em favor da exportação de dados para a New Relic usando OTLP.

Traces

A New Relic oferece suporte para ingestão OTLP de sinais trace . A maturidade da especificação upstream é estável.

Os rastreamentos e extensões do OpenTelemetry são compatíveis com os rastreamentos e extensões do New Relic. Os spans do OpenTelemetry incluem opcionalmente atributo (pares nome-valor) e atributo de recurso que mapeiam diretamente para dimensões que podem ser usadas para facetar ou filtrar dados de span no momento da consulta. Os metadados de intervalo do OpenTelemetry (por exemplo, name, kind e trace_id) também mapeiam diretamente para dimensões em intervalos do New Relic. No momento, o New Relic não oferece suporte a links de extensão.

Para obter detalhes, consulte a seção de rastreamento do nosso guia de práticas recomendadas .

Recurso

Suportado

Evento de extensão

Vinculação de período

Matriz de primitivas (homogênea)

✅ (Deve ser não aninhado e ter 64 ou menos elementos)

Métrica

New Relic oferece suporte para ingestão OTLP de sinais métricos.

Aqui estão os tipos de dados OpenTelemetry que oferecemos suporte e seu mapeamento associado. Para obter detalhes, consulte Métrica OpenTelemetry: Melhores práticas.

Tipo de métrica

Suportado

Somas delta

Somas cumulativas

Medidor

Histograma Delta

Resumo

Histograma cumulativo

Exemplos

Matriz de primitivas (homogênea)

✅ (Deve ser não aninhado e ter 64 ou menos elementos)

Registro

A New Relic oferece suporte para ingestão OTLP de sinais de log. A maturidade da especificação upstream é estável.

O log OpenTelemetry é compatível com o log no New Relic. Os logs do OpenTelemetry incluem opcionalmente atributo (pares nome-valor) e atributo de recursos que mapeiam diretamente para dimensões que você pode usar para facetar ou filtrar dados log com consulta. Os metadados log do OpenTelemetry (por exemplo, name, severity_text e trace_id) também são mapeados diretamente para dimensões nos recursos do New Relic. Atualmente, oferecemos suporte a todos os tipos de mensagem do log do OpenTelemetry.

Para obter mais detalhes, consulte as informações de registro em nosso guia de práticas recomendadas.

Recurso

Suportado

Descrição

Corpo do LogRecord

Tipos suportados: string, boolean, int, double, bytes

LogRecord atributo

Tipos suportados: string, boolean, int, double, bytes

Campos LogRecord

Exemplos: name, severity_text, trace_id

Mensagens de matriz (homogêneas)

✅ (Deve ser não aninhado e ter 64 ou menos elementos)

Matriz de primitivas (homogênea)

✅ (Deve ser não aninhado e ter 64 ou menos elementos)

Próximos passos

Siga o início rápido do OpenTelemetry para ajudá-lo a começar.

Você também deseja revisar o guia de práticas recomendadas para aproveitar ao máximo os dados exportados para o New Relic.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.