/* As regras e de gateway do Controle de às vezes funcionam de forma diferente umas das outras, mesmo quando se usam Pipeline cloud NRQL definições idênticas. Quando dados de telemetria são recebidos pelo New Relic, eles passam por diversas transformações e enriquecimentos antes de serem avaliados pelas regras cloud e armazenados no NRDB. Mas as regras de gateway são executadas em sua própria infraestrutura antes que os dados sejam transformados e enriquecidos pelo New Relic. Essa diferença no esquema e na fidelidade dos dados pode fazer com que as regras de gateway não funcionem conforme o esperado. Ao criar regras de gateway, certifique-se de consultar este documento ao elaborar sua definição de NRQL para converter ou remover qualquer atributo que opere de forma diferente no gateway. Isso pode ocorrer porque os atributos têm um nome diferente ou porque eles nem existem. Use este documento para procurar o atributo que você está usando na definição NRQL da regra de gateway para identificar. Se um atributo tiver sido renomeado, basta usar o atributo renomeado no seu NRQL em vez do atributo original. Se um atributo não estiver disponível, considere usar uma regra cloud em vez de uma regra de gateway. Para garantir um processamento de dados eficaz: - Preservar todos os atributos não dropáveis listados nas tabelas. - Use consulta de amostra nas tabelas para gerenciar registros sem comprometer a integridade dos atributos essenciais. */
Visão geral do fluxo de dados
Fontes de dados
Os dados entram no gateway New Relic de várias fontes:
- Agentes APM
- Agente de infraestrutura
- APImétrica
Formato de dados
Esses dados recebidos são estruturados como JSON complexo e multi-aninhado com vários atributos.
Estágios de processamento
- Processamento de gateway: o processamento inicial de dados ocorre aqui na sua própria infraestrutura.
- Enriquecimento: Após o gateway, atributos adicionais são adicionados E alguns nomes de atributos são alterados.
- Processamento de regras de nuvem: processa dados com o atributo renomeado/enriquecido no ambiente do New Relic.
- Armazenamento final: os dados são armazenados no banco de dados New Relic (NRDB).
Considerações para escrever consulta NRQL para regras de gateway
Característica renomeada
Se você estiver usando atributos que são renomeados durante o processo de enriquecimento (após o gateway, antes das regras cloud ), não se preocupe. New Relic manipula automaticamente esse mapeamento, para que sua consulta NRQL funcione corretamente nos níveis de gateway e de regra cloud .
Atributo adicionado
Alguns atributos são adicionados somente durante o processo de enriquecimento (após o gateway, antes das regras cloud ). Esses atributos:
- Pode ser usado em consulta NRQL para regras de descarte cloud
- Não pode ser usado em consulta NRQL para regras de descarte de gateway (já que elas não existem naquele momento)
Práticas medidas
Ao criar regras de gateway, esteja ciente de que alguns atributos podem não estar disponíveis no nível do gateway. Se você precisar usar atributos que são adicionados somente durante o enriquecimento, considere usar uma regra cloud em vez de uma regra de gateway.
Tipos de dados e tratamento de atributos
A tabela a seguir lista:
- Tipos de dados para os quais você pode criar regras de descarte usando NRQL
- Tipos de dados para os quais as regras de descarte não são suportadas
- atributo indisponível no nível do gateway
- Exemplo de consulta para cada tipo de dados suportado
Tipo de dados | Regras de descarte são suportadas? | atributo indisponível no gateway | Exemplo de consulta NRQL |
---|---|---|---|
Transação | Sim | appId, appName, containerId, entidade.guid, entityGuid, host, realAgentId, transactionSubType, transactionType |
|
MeuEventoPersonalizado | Sim | appId, appName, containerId, entityGuid, host, realAgentId |
|
Rastreamento de erro | Sim | agregadoFacet, appId, appName, applicationIds, contagem, entidade.guid, entityGuid, erro.class, mensagem, caminho, exceptionClass, impressão digital, id, mensagem, realAgentId, storageId, timestamp, transactionName, transactionUiName |
|
Erro de transação | Sim | agregadoFacet, appId, appName, containerId, entidade.guid, entityGuid, host, realAgentId, transactionUiName |
|
Log | Sim | entidade.guids, messageId, newrelic.logPattern, newrelic.logs.índice de lote, nova relíquia.fonte |
|
Métrica | Não | appId, appName, entidade.guid, entityGuid, idioma, metricName, metricTimesliceName, newrelic.timeslice.value, escopo, timestamp | Não aplicável |
Período | Sim | appId, appName, containerId, duração.ms, entidade.guid, nome.entidade, entityGuid, ID do host, process.id, realAgentId, trace.id |
|
SQLTrace-Trace-Traço | Não | applicationIds, callCount, databaseMetricName, entidade.guid, id, maxCallTime, minCallTime, caminho, realAgentId, sql, sqlId, storageId, timestamp, totalCallTime, uri | Não aplicável |
Rastreamento de transações | Não | storageId, uri, caminho, agentRunId, applicationIds, duração, entidade.guid, guid, id, protocolVersion, realAgentId, timestamp | Não aplicável |
métrica/medidor | Sim | newrelic.source (metricAPI), metricName:
|
|
métrica/resumo | Sim | newrelic.source (metricAPI), metricName:
|
|
métrica/contagem | Sim | newrelic.source (metricAPI), metricName:
|
|
Amostra do Sistema | Sim | Nenhum |
|
Amostra de armazenamento | Sim | EntidadeEPontoDeMontagem |
|
Amostra de rede | Sim | EntidadeEInterface |
|
Amostra de Processo | Sim | EntidadeEPid |
|
Amostra de contêiner | Sim | EntityGuid, Tipo de Entidade, Id da Entidade |
|