• 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

Guia de transição para métrica de soma cumulativa OpenTelemetry

Nosso pipeline de métricas OTLP está sendo atualizado para melhor suportar a forma como lidamos com métricas cumulativas. Como parte dessa atualização, estamos fazendo a transição do tipo de dados de métrica subjacente para somas cumulativas monotônicas de um tipo gauge para o tipo cumulativeCount . O tipo cumulativeCount permite consultar o valor cumulativo e delta associado aos dados reportados.

A partir de gaDateAndYear, ingeriremos métricas monotônicas cumulativas de acordo com o seguinte cronograma de fim de vida (EoL):

  • gaDateAndYear:

    • A ingestão de somas monotônicas cumulativas conforme o tipo de métrica cumulativeCount é liberada (somas cumulativas não monotônicas não são afetadas). A experiência anterior de ingestão dessas métricas como o tipo de métrica gauge foi descontinuada.
    • As contas que enviavam ativamente somas monotônicas cumulativas antes desta data podem continuar a usar a ingestão do tipo gauge .
    • Todas as outras contas terão somas monotônicas acumuladas ingeridas como cumulativeCount tipos de métrica.
  • gaDate através de eolDate:

    • As contas que usam a ingestão do tipo gauge obsoleta podem ativar a ingestão do tipo cumulativeCount .

      Early opt-in is the best way to ensure affected queries and alerts are not disrupted by the EoL

      .

  • eolDateAndYear: todas as contas serão migradas para o tipo cumulativeCount de ingestão para somas monotônicas cumulativas.

Se você estava ingerindo somas monotônicas cumulativas antes do gaDate, esse período de 180 dias lhe dá tempo para atualizar as consultas e que fazem uso da métrica afetada.

As seções abaixo irão ensiná-lo:

  • Como saber se você foi impactado
  • Como se preparar para a EoL
  • Como ativar a funcionalidade cumulativeCount antes da data de fim de vida

Importante

As somas cumulativas não monotônicas não serão afetadas.

Verifique o impacto

Se sua conta estava enviando métrica de soma cumulativa OTLP para New Relic antes de gaDateAndYear, você será impactado pelo EoL em eolDateAndYear.

Para ver se você foi afetado, execute a seguinte consulta NRQL para a conta relevante:

FROM NrIntegrationError SELECT count(*)
WHERE newRelicFeature = 'cumulativeSumAsGaugeEoL'
SINCE 24 hours ago

A consulta retornará resultados se você reportou métricas impactadas por este EoL nas últimas 24 horas.

Para investigar mais detalhadamente, você pode visualizar a mensagem do evento para ver quais métricas foram afetadas:

FROM NrIntegrationError SELECT uniques(metricName)
WHERE newRelicFeature = 'cumulativeSumAsGaugeEoL'
LIMIT MAX SINCE 24 hours ago

Qualquer monitoramento ou alerta envolvendo essas métricas precisará ser revisado e atualizado antes da data de fim de vida. A próxima seção contém sugestões de ações para métricas impactadas.

O que fazer se você for impactado

No eolDate, o relatório de métricas de soma cumulativa monotônica OTLP mudará do tipo de métrica gauge para cumulativeCount . Se você estiver usando essas métricas, você vai querer se preparar para isso. Por exemplo, você pode querer criar condição do alerta duplicada com o novo tipo de métrica para que, quando a mudança acontecer, você não tenha uma interrupção (e explicamos como fazer isso abaixo).

Nossas práticas recomendadas do OpenTelemetry descrevem as diferenças na consulta entre um tipo de métrica gauge e um tipo de métrica cumulativeCount . Ou seja, você poderá definir o valor delta (por padrão) ou o valor cumulativo selecionando o campo cumulativo.

Vejamos um exemplo de consulta de uma métrica de soma monotônica cumulativa metricName. Até a EoL, uma consulta como:

FROM Metric SELECT latest(<metricName>)

estaria avaliando apenas gauge métrica. Assim que o EoL acontecer, o tipo de métrica subjacente associado a metricName mudará para cumulativeCount. Dependendo do alerta, essa alteração pode causar resultados falsos, pois o valor da métrica para um tipo gauge e cumulativeCount representa valores diferentes do ponto de dados.

Abaixo focamos na atualização da condição do alerta, pois os alertas geralmente são mais importantes que os gráficos. Para seus gráficos personalizados, você pode:

  • Siga a mesma abordagem geral que descrevemos para alerta (crie um novo gráfico com uma consulta atualizada e apague o gráfico antigo após o EoL), OU
  • Espere até depois do EoL e atualize os gráficos

Ação sugerida: Criar novas versões do alerta

Aqui estão alguns exemplos de consultas que podem ser utilizadas na condição do alerta. Forneceremos a consulta original, depois uma versão gauge da consulta e uma versão cumulativeCount da consulta. Você deve substituir o alerta existente pela versão gauge da consulta e criar uma condição do alerta duplicada que use a versão cumulativeCount . Dessa forma, quando fizermos a transição da sua conta para cumulativeCount no eolDate, essa condição do alerta estará disponível quando a consulta antiga não funcionar mais.

Consulta cumulativa

Consulta original:

FROM Metric SELECT latest(<metricName>)

Versão do medidor da consulta:

FROM Metric SELECT latest(<metricName>)
WHERE <metricName>[type] = 'gauge'

Versão de contagem cumulativa da consulta:

FROM Metric SELECT latest(<metricName>[cumulative])
WHERE <metricName>[type] = 'cumulativeCount'

Consulta de taxa de variação

Consulta original:

FROM Metric SELECT derivative(<metricName>, 1 minute)

Versão do medidor da consulta:

FROM Metric SELECT derivative(<metricName>, 1 minute)
WHERE <metricName>[type] = 'gauge'

Versão de contagem cumulativa da consulta:

FROM Metric SELECT rate(sum(<metricName>[cumulative]), 1 minute)
WHERE <metricName>[type] = 'cumulativeCount'

Ação sugerida: visualizar cumulativaCount antes do EoL

As contas afetadas continuarão a ter suas somas cumulativas armazenadas como tipos gauge até o EoL. No entanto, opcionalmente, você pode testar cumulativeCount antes do fim da vida para validar que sua consulta e alerta estão se comportando conforme o esperado. Para testar cumuativeCount tipos antecipadamente, adicione o seguinte atributo aos dados OTLP enviados para a New Relic:

newrelic_metric_type=cumulativeCount

Importante

Quando você começar a enviar newrelic_metric_type=cumulativeCount em seus dados, quaisquer somas monotônicas cumulativas que recebermos serão convertidas em tipos cumulativeCount . Isso significa que qualquer consulta ou alerta existente configurado para destino do tipo gauge receberá resultados inesperados. Tenha isso em mente ao testar a experiência cumulativeCount . Para retornar ao tipo gauge , simplesmente pare de configurar o atributo newrelic_metric_type .

Biblioteca de instrumentação

Se estiver usando uma biblioteca de instrumentação OTLP em sua base de código, você deverá fazer referência ao SDK de linguagem apropriado para seu aplicativo. Qualquer método de adição do atributo newrelic_metric_type=cumulativeCount a pontos de dados métricos individuais ou ao nível de atributo do recurso deve ser suficiente.

Aqui está um exemplo de adição do atributo diretamente à métrica de relatório no Java SDK:

final var meter = openTelemetry.meterBuilder("manual-instrumentation-scope")
.setInstrumentationVersion("1.0.0")
.build();
final LongCounter counter = meter.counterBuilder("myCumulativeCounter")
.build();
counter.add(1, Attributes.of(stringKey("newrelic_metric_type"), "cumulativeCount"));

Coletor

Se a origem do seu monitoramento OTLP vier do coletor OTLP, você poderá usar o processador de atributos OpenTelemetry para adicionar o atributo antes de enviá-lo aos seus exportadores. Por exemplo, o trecho a seguir inserirá o atributo newrelic_metric_type=cumulativeCount :

attributes:
actions:
- key: newrelic_metric_type
action: insert
value: cumulativeCount
service:
pipelines:
metrics:
processors: [...,attributes,...]

Verificando resultados

Depois de definir newrelic_metric_type=cumulativeCount em seus dados de métrica, você pode verificar se estamos recebendo-os corretamente com esta consulta:

FROM Metric SELECT count(*) WHERE %[type] = 'cumulativeCount' TIMESERIES
Copyright © 2024 New Relic Inc.

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