Problema
Você enviou pontos de dados métricos para a API métrica e não está vendo o que esperava ao consultar os dados. Use a lista de verificação a seguir para determinar a causa raiz:
- Certifique-se de consultar os dados corretamente.
- Verifique os códigos de status HTTP retornados pela API. Problemas como falhas de autorização podem ser diagnosticados com códigos de status HTTP.
- Se você estiver enviando dados de um servidor Prometheus por meio do endpoint remote_write do New Relic, verifique se há erros no log do servidor Prometheus ou respostas HTTP não 2xx do endpoint New Relic.
- Consulte sua conta para
NrIntegrationErrorevento. Os endpoints de ingestão do New Relic são assíncrono, o que significa que o endpoint verifica a carga depois de retornar a resposta HTTP. Se ocorrer algum problema durante a verificação de sua carga útil, um eventoNrIntegrationErrorserá criado em sua conta. A New Relic também usa o eventoNrIntegrationErrorpara notificar os clientes quando vários limites de taxas forem atingidos.
Solução
Ver detalhes do erro
Para obter uma introdução ao uso do evento NrIntegrationError , consulte NrIntegrationError.
Aqui está um exemplo de NRQL para examinar problemas com a ingestão da API métrica:
SELECT count(*) FROM NrIntegrationError WHERE newRelicFeature = 'Metrics' FACET category, message LIMIT 100 SINCE 24 hours agoO category indica o tipo de erro e o message fornece informações mais detalhadas sobre o erro. Se category for rateLimit, você também deverá examinar o campo rateLimitType para obter mais informações sobre o tipo de limitação de taxa.
Categoria | rateLimitType | Descrição e solução |
|---|---|---|
| (não configurado) | Há um problema com a carga JSON. Isso inclui erros de sintaxe JSON, nomes de atributos ou valores muito longos. Verifique o campo |
|
| Você possui um atributo com alto número de valor exclusivo, como |
|
| Você tem servidores Prometheus relatando muitas séries temporais exclusivas por meio do endpoint remote_write do New Relic. Reduza o número de séries temporais exclusivas relatadas modificando a configuração do servidor Prometheus para reduzir o número de destinos sendo copiados ou usando regras de relabel na seção remote_write da configuração do servidor para descartar séries temporais ou rótulos altamente exclusivos. |
|
| Muitas solicitações por minuto estão sendo enviadas. Para resolver isso, coloque mais pontos de dados em cada solicitação e envie-os com menos frequência. |
|
| Você excedeu o limite diário do grupo de erros. Os grupos de erros recebidos serão descartados pelo resto do dia e continuarão normalmente após a meia-noite UTC. Para resolver isso, reduza a quantidade de mensagens de erro exclusivas coletadas pela New Relic. |
Corresponder erros à carga ingerida
Quando um eventoNrIntegrationError é criado como resultado de um problema de sintaxe com a carga útil da solicitação HTTP, o evento contém o atributo apiKeyPrefix e requestId.
- O
apiKeyPrefixcorresponde aos primeiros seis caracteres da chave de API usada para enviar os dados. - O
requestIdcorresponde aorequestIdenviado na resposta HTTP.
Para visualizar esses campos, execute esta consulta NRQL:
SELECT message, apiKeyPrefix, requestId FROM NrIntegrationError LIMIT 100Para verificar um requestId específico, execute esta consulta NRQL:
SELECT * FROM NrIntegrationError WHERE requestId = 'REQUEST_ID'Recuperar programaticamente o evento NrIntegrationError
Para recuperar esses erros programaticamente:
Certifique-se de ter uma chave de API de consulta do Insights (vá para one.newrelic.com/api-keys).
Crie uma solicitação HTTP conforme mostrado abaixo:
Dica
Se a sua organização alojar dados no centro de dados da UE, certifique-se de que está a utilizar o ponto final da região da UE.
bash$curl -H "Accept: application/json" -H "X-Query-Key:YOUR_API_KEY_HERE" "https://insights-api.newrelic.com/v1/accounts/YOUR_ACCOUNT_HERE/query?nrql=SELECT%20*%20FROM%20NrIntegrationError%20where%20newRelicFeature='Metrics'"