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

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

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Atualizar processamento de atributo OTLP New Relic

Estamos ajustando nossa lógica de validação de ingestão OTLP para ter um processamento de atributos mais flexível.

New Relic O OTLP endpoint executa uma variedade de validações no atributo. Há limites de atributos que restringem coisas como o comprimento de chaves e valores, bem como restrições adicionais em tipos de valor para casos extremos que são possíveis de expressar por meio das definições de mensagem protobuf, mas que normalmente não são encontrados na prática, incluindo matrizes heterogêneas (ou seja, uma matriz com uma mistura de tipos de valor como strings e inteiros), matrizes aninhadas (ou seja, uma matriz de matrizes) e muito mais.

Atualmente, o endpoint OTLP do New Relic é rigoroso com validação. Em alguns casos, removemos o atributo problemático silenciosamente, mas, na maioria dos problemas de validação, descartamos o registro inteiro quando um único atributo é inválido.

Essa validação rigorosa é um dos problemas mais comuns que os clientes encontram ao enviar dados OTLP para a New Relic. Felizmente, há uma solução fácil:

Estamos adotando uma postura leniente de processamento de atributos. Quando um atributo for inválido, nós o removeremos ou modificaremos e manteremos o registro. Em casos graves, ainda podemos descartar registros quando não há uma maneira intuitiva de mantê-los. Sempre que podamos ou modificamos um atributo, ou removemos um registro, criaremos um NrIntegrationError para ajudar a rastrear e corrigir o problema na origem.

Implementaremos essa mudança em 2 de junho de 2025.

Como isso vai me afetar

Acreditamos que isso será um alívio bem-vindo em quase todos os casos. Nossa validação rigorosa atual frequentemente produz dados ausentes, o que pode ser difícil de rastrear e diagnosticar, especialmente em ambientes com um grande número de implantações gerenciadas por muitas equipes individuais. Com essa mudança, o endpoint OTLP do New Relic incorporará melhor nossa filosofia de “armazenar o que você envia”.

No entanto, dado o modelo de preços baseado no uso do New Relic, essa mudança significa que os registros que foram descartados anteriormente agora serão armazenados e contribuirão para o uso de dados da sua conta.

Se você estiver seguindo nossa documentação endpoint OTLP sobre limites de atributos e os atributos dos seus dados estiverem em conformidade com a definição de atributos padrão OpenTelemetry , não há nada a fazer. A conformidade com essas restrições significa que nenhum dado está sendo descartado no momento e, portanto, nenhum dado adicional será armazenado.

Para verificar se algum dado em sua conta está sendo descartado devido à validação de atributo, execute a seguinte consulta NRQL:

FROM NrIntegrationError SELECT * WHERE message like 'One or more OTLP data point(s) was dropped%'

Se esta consulta retornar resultados, você poderá ver uma alteração no uso e, portanto, no faturamento após essa alteração. O valor exato depende da frequência com que os registros violam os limites. Especificamente, os seguintes casos atualmente resultam em registros descartados e serão ajustados conforme descrito abaixo:

  • O nome do atributo excede o limite de 255 caracteres. O nome do atributo será truncado e mantido.
  • O valor da string do atributo excede o limite de 4.095 caracteres. O valor do atributo será truncado e mantido.
  • atributo byte matriz excede o limite de 128k na matriz de bytes. O atributo será removido e o registro será mantido.
  • O comprimento da matriz excede o limite de 64 entradas. O atributo será removido e o registro será mantido.

OBSERVAÇÃO: O problema de validação mais comum que vemos são valores de string de atributo que excedem o limite de 4.095 caracteres. Alterar a validação de descartar registros com valores de atributos longos para truncar atributos longos e manter o registro pode causar um aumento notável no uso de dados.

Veja a mitigação para obter conselhos sobre como compensar qualquer uso adicional de dados que você possa incorrer.

Mitigação

Parte da proposta de valor central da OpenTelemetry é fornecer ferramentas para assumir o controle do seu pipeline de dados de telemetria. Por isso, há uma variedade de ferramentas disponíveis para ajudar a mitigar uma mudança no uso de dados. Para uma discussão completa, consulte Gerenciar volume de ingestão de dados do OpenTelemetry. Algumas estratégias são particularmente relevantes aqui:

Truncar atributo longo

Aproveitando o processador de transformação de coletor e o editor truncate_all , trunque todos os atributos para algum limite conhecido, conforme demonstrado aqui. É isso que o endpoint OTLP do New Relic fará após essa alteração. No entanto, você pode aproveitar essa técnica para compensar uma mudança no uso definindo um limite menor do que os limites da plataforma New Relic. Por exemplo, você pode definir um limite de 1000 se achar que precisará apenas dos primeiros 1000 caracteres para seu caso de uso de observabilidade.

transform:
trace_statements:
- truncate_all(span.attributes, 4095)
- truncate_all(resource.attributes, 4095)
log_statements:
- truncate_all(log.attributes, 4095)
- truncate_all(resource.attributes, 4095)
metric_statements:
- truncate_all(datapoint.attributes, 4095)
- truncate_all(resource.attributes, 4095)

Solte o atributo ofensivo

Aproveitando o processador de transformação de coletor e o editor delete_key , exclua atributos que não são valiosos:

transform:
trace_statements:
- delete_key(span.attributes, "attribute.key.to.drop")
log_statements:
- delete_key(log.attributes, "attribute.key.to.drop")
metric_statements:
- delete_key(datapoint.attributes, "attribute.key.to.drop")

Você pode optar por remover chaves de atributos que são particularmente longas e, portanto, contribuem muito para o uso, ou atributos que são curtos, mas geralmente não são úteis. Para referência, a lista a seguir resume os 10 atributos mais comuns que violam o limite de comprimento do valor do atributo:

  • exception.stactrace
  • other - um resumo para atributo personalizado não definido nas convenções semânticas OpenTelemetry
  • db.statement
  • process.command_line
  • graphql.document
  • db.operation
  • db.query.text
  • http.url
  • exception.message
  • http.target

Envie menos registros com amostragem

Compense os dados adicionais ajustando sua taxa de amostragem usando qualquer uma das estratégias discutidas aqui.

Copyright © 2025 New Relic Inc.

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