A plataforma de streaming verifica incidentes com base nos dados presentes ou ausentes no fluxo de dados ou sinal que chega ao New Relic.
Você pode usar condições NRQL para controlar sobre qual parte do sinal você deseja ser notificado. Sua condição NRQL filtra os dados processados pelo algoritmo de streaming.
Existem três métodos para agregar os dados filtrados através da sua condição NRQL:
- Fluxo de eventos (padrão)
- Temporizador de evento
- Cadência
Este pequeno vídeo descreve o método de três agregações (5:31).
Por que isso importa
Compreender como funciona o alerta de streaming ajudará você a ajustar suas condições de NRQL para ser notificado sobre o que é importante para você.
Somente os dados que correspondem às condições da cláusula NRQL WHERE são alertados. Para obter mais detalhes sobre cada etapa do processo, consulte Processo e descrições do alerta de streaming.
À medida que os dados são transmitidos para o New Relic, eles são filtrados pela condição NRQL. Antes de os dados serem avaliados, eles devem atender aos critérios definidos pela cláusula WHERE
da consulta NRQL. Em vez de avaliar esses dados imediatamente quanto ao incidente, a condição do alerta do NRQL coleta os dados durante um período de tempo conhecido como janela de agregação. Um atraso/temporizador adicional permite que pontos de dados mais lentos cheguem antes que a janela seja agregada.
Depois que o tempo de atraso/temporizador tiver decorrido, o New Relic agrega os dados em um único ponto de dados. O Alerta então compara o ponto de dados com os critérios de limite da condição para determinar se um incidente deve ser aberto.
Mesmo que um ponto de dados atenda aos critérios para um incidente, um incidente não poderá ser aberto. Um incidente só é aberto quando os pontos de dados atendem consistentemente aos critérios de limite durante um período de tempo. Esta é a duração limite. Se os pontos de dados excederem todo o limite, enviaremos uma notificação com base nas configurações da sua política.
Todos esses atrasos configuráveis oferecem mais controle sobre como você recebe alertas sobre dados esporádicos e ausentes.
Processo e descrições de alerta de streaming
Processo | Description |
---|---|
Dados de streaming | Todos os dados que chegam ao New Relic. |
Cláusula WHERE | Filtra todos os dados de streaming recebidos. monitor apenas alertas sobre os dados que passam por esse filtro. |
Métodos de agregação | Um dos três métodos que controlam como os dados são coletados antes de serem avaliados. Eles são:
|
Janela de agregação | Os dados com carimbo de data/hora que se enquadram nesta janela serão agregados e avaliados. |
Janelas deslizantes | Quando ativado, faz com que as janelas de agregação se sobreponham, criando gráficos mais suaves. Use a duração das janelas deslizantes para definir por quanto tempo as janelas de agregação se sobrepõem. |
Atraso/temporizador | Um atraso para garantir que todos os pontos de dados chegaram à janela de agregação antes que a agregação ocorra. |
Dados agregados | Os dados na janela agregada são recolhidos em um único ponto de dados para avaliação de alerta. |
Avaliação | O ponto de dados é avaliado pela condição NRQL, que é acionada por cada ponto de dados agregados de entrada. |
Duração do limite | Uma duração específica que determina se um incidente será criado. Se a condição NRQL especificada atender aos critérios de limite durante a duração do limite, ocorrerá um incidente. Quando um ponto de dados não possui dados, um valor personalizado é inserido para preencher a lacuna. |
Escolha seu método de agregação
Você pode escolher entre três métodos de agregação diferentes, dependendo de suas necessidades.
o fluxo de eventos (padrão) funciona melhor para dados que chegam com frequência e principalmente em ordem.
O temporizador de eventos funciona melhor para dados que chegam com pouca frequência em lotes, como dados de integração na nuvem ou log de erros pouco frequentes.
Cadência é nosso método de agregação original e inferior. Ele agrega dados em intervalos de tempo específicos detectados pelo relógio de parede interno da New Relic, independentemente do carimbo de data/hora dos dados.
Aqui está um pequeno vídeo (5:35 minutos) explicando os métodos de agregação:
Fluxo de eventos
O fluxo de eventos agrega uma janela de dados quando o primeiro ponto de dados chega em uma janela subsequente. O atraso personalizado define quais dados da janela subsequente começarão a ser preenchidos para acionar a agregação da janela atual. Um atraso personalizado fornece tempo extra para a chegada dos dados. Esses tempos são baseados no carimbo de data/hora dos dados e não no tempo transcorrido do New Relic.
Por exemplo, suponha que você esteja monitorando o uso da CPU em janelas com durações de 1 minuto e um atraso de 3 minutos.
Quando um ponto de dados de uso da CPU chega com um timestamp entre 12h00 e 12h01, o fluxo de eventos não agregará essa janela até que um ponto de dados apareça com um timestamp de data/hora entre 12h04 e 12h05. Quando o fluxo de eventos recebe o primeiro ponto de dados com um timestamp de data/hora de 12h04 ou posterior, ele envia os dados de 12h00 a 12h01 para serem agregados.
Cuidado
Se você espera que seus pontos de dados cheguem com mais de 65 minutos de intervalo, use o método Event Timer descrito abaixo.
Temporizador de evento
Assim como o fluxo de eventos, o temporizador de eventos só agregará dados para uma determinada janela quando os dados chegarem para essa janela. Quando um ponto de dados chega para uma janela de agregação, um cronômetro dedicado a essa janela inicia a contagem regressiva. Se nenhum outro dado chegar antes da contagem regressiva do cronômetro, os dados dessa janela serão agregados. Se mais pontos de dados chegarem antes que o cronômetro termine a contagem regressiva, o cronômetro será reinicializado.
Por exemplo, suponha que você esteja monitorando dados do CloudWatch que chegam com pouca frequência. Você está usando uma janela com duração de 1 minuto e um cronômetro de 3 minutos.
Quando um ponto de dados do CloudWatch chega com um timestamp entre 12h00 e 12h01, o cronômetro começará a contagem regressiva. Se nenhum outro ponto de dados aparecer para a janela das 12h às 12h01, a janela será agregada 3 minutos depois.
Se um novo ponto de dados com um timestamp entre 12h00 e 12h01 chegar, o cronômetro será reiniciado. Ele continua sendo redefinido sempre que chegam mais pontos de dados para aquela janela. A janela não será enviada para agregação até que o cronômetro chegue a 0.
Se o cronômetro de um ponto de dados posterior expirar antes de um ponto de dados anterior, o método do cronômetro de evento aguardará o término do cronômetro anterior antes de agregar o ponto de dados posterior.
Para obter melhores resultados, certifique-se de que o cronômetro seja igual ou maior que o tempo de duração da janela. Se o cronômetro for menor que a duração da janela e o fluxo de dados for inconsistente, seus dados poderão ser avaliados antes que todos os pontos de dados cheguem. Isso pode fazer com que você seja notificado incorretamente.
Cadência
Recomendamos que você use um dos outros dois métodos.
Cadence é nosso antigo método de agregação de streaming. Este método usa o tempo transcorrido do New Relic para determinar quando os dados são agregados e avaliados. Ele não leva em consideração o carimbo de data/hora do ponto de dados à medida que eles chegam.
Ferramentas de alerta de streaming
O alerta de streaming fornece um conjunto de ferramentas para lhe dar maior controle sobre como seus dados são agregados antes de serem avaliados para reduzir as notificações incorretas que você recebe. Eles são:
- Duração da janela
- Atraso/temporizador
- Perda de detecção de sinal
- Preenchimento de lacunas
Dica
Este artigo aborda essas ferramentas em um nível conceitual. Você encontrará instruções diretas sobre como usar essas ferramentas em Criar NRQL condição do alerta.
Duração da janela
Para tornar a detecção de perda de sinal mais eficaz e reduzir notificações desnecessárias, você pode personalizar as janelas de agregação com a duração necessária.
Uma janela de agregação é um bloco de tempo específico. Reunimos pontos de dados em uma janela de agregação, antes de avaliar os dados. Uma janela de agregação mais longa pode suavizar os dados, uma vez que um ponto de dados outlier terá mais pontos de dados para serem agregados, dando-lhe menos influência no ponto de dados agregados que é enviado para avaliação. Quando um ponto de dados chega, seu timestamp é usado para colocá-lo na janela de agregação adequada.
Você pode definir sua janela de agregação para qualquer valor entre 30 seconds e 6 hours. O padrão é 1 minute.
Atraso/temporizador
A configuração de atraso/temporizador controla quanto tempo a condição deve esperar antes de agregar os dados na janela de agregação.
Os métodos de fluxo de eventos e cadência usam atraso. O cronômetro de evento usa o cronômetro.
O atraso padrão é 2 minutes. O padrão do temporizador é 1 minute, tem um valor mínimo de 5 seconds e um valor máximo de 20 minutes.
Perda de detecção de sinal
A perda de sinal ocorre quando nenhum dado corresponde à condição NRQL durante um período específico de tempo. A perda de sinal é causada por coisas diferentes. A cláusula WHERE
na sua consulta NRQL pode filtrar dados antes que eles sejam avaliados quanto a incidentes. Também pode significar que um serviço ou entidade está offline ou que um trabalho periódico falhou na execução e nenhum dado está sendo enviado para o New Relic.
Para evitar notificações desnecessárias, você pode escolher quanto tempo esperar antes de ser notificado sobre um incidente de perda de sinal. Você pode usar a detecção de perda de sinal para abrir um incidente e ser notificado quando um sinal for perdido. Alternativamente, você pode usar uma perda de sinal para fechar incidentes para serviços efêmeros ou dados esporádicos, como contagens de erros.
Preenchimento de lacunas
O preenchimento de lacunas permite personalizar os valores a serem usados quando seus sinais não possuem dados. Você pode preencher lacunas em seus fluxos de dados com o último valor recebido, um valor estático, ou então não fazer nada e deixar a lacuna aí. O padrão é None
.
Lacunas nos dados de streaming podem ser causadas por problemas de rede ou host, um sinal pode ser escasso ou alguns sinais, como contagens de erros, podem ter dados apenas quando algo está errado. Ao preencher as lacunas com valores conhecidos, o processo de avaliação de alerta pode processar essas lacunas e determinar como elas devem afetar a avaliação da perda de sinal.
Dica
O sistema de alerta preenche lacunas nos sinais reportados ativamente. Este histórico de sinal é eliminado após 2 horas de inatividade. Para preencher lacunas, os pontos de dados recebidos após este período de inatividade são tratados como novos sinais.
Para saber mais sobre perda de sinal e preenchimento de lacunas, consulte esta postagem no Fórum de Suporte.