Alertas baseados em tendências usando o algoritmo EWMA

Alerta baseado em tendências usando o algoritmo EWMA

Ao configurar alertas do AppLogs, você precisa escolher se seu alerta deve ser baseado em contagem ou em tendência. Para alertas baseados em tendência, para calcular os valores médios, o Site24x7 usa o algoritmo EWMA (Exponentially Weighted Moving Average – Média móvel ponderada exponencialmente) para identificar picos anormais e alterações na tendência do log.

O que é o algoritmo EWMA?

O EWMA se refere a uma média de dados que é usada para acompanhar o movimento do valor verificando os resultados e a saída. Ele considera diferentes fatores, atribui um peso ao valor, monitora os resultados para avaliar o desempenho e recomenda melhorias.

O peso de um EWMA é reduzido exponencialmente à medida que ele é removido ao longo do tempo. Além disso, como o EWMA contém a média calculada anteriormente, o resultado do EWMA será cumulativo. Por isso, todos os pontos de dados contribuirão para o resultado, mas o fator de contribuição será reduzido no próximo período em que o EWMA for calculado.

A média móvel EWMA para um determinado horário t é calculada da seguinte forma:
EWMA(t) = a * x(t) + (1-a) * EWMA(t-1)

Aqui,
EWMA(t) = média móvel no horário t.
a = grau de valor do parâmetro de combinação entre 0 e 1. Esse parâmetro mostra a taxa na qual os dados mais antigos entrarão no cálculo.
x(t) = valor de uma saída de consulta de alerta no horário t.

Se a=1, somente os dados mais recentes foram usados para medir o EWMA. 
Se a estiver próximo de 0, então mais peso será atribuído aos dados mais antigos.
Se a estiver próximo de 1, então mais peso será atribuído aos dados mais recentes.

Caso de uso: Logs de acesso do IIS

Vamos considerar o caso de uso de logs de acesso do Internet Information Services (IIS) com um erro de código de status 500. Nesse caso, quando os alertas baseados em tendência são configurados com uma frequência de verificação de uma hora, a tendência será observada pelo número de dias configurado, e você receberá alertas com base no valor da média móvel se houver um aumento repentino na contagem de exceções.

Por exemplo, vamos considerar a contagem de exceções para cada hora, conforme mostrado abaixo:
a = 0,3 (o Site24x7 corrige o valor de a como 0,3, pois atribui peso aos dados mais antigos) 
Horário (t)
Valor em t
EWMA
Crescimento percentual
10 AM
27
27
0
11 AM
30
27.9
11.11
Meio-dia
40
31.53
43.37
1 PM
55
38.57
74.44
2 PM
453
162.9
1074.49
3 PM
105
145.53
-35.54

Se tiver configurado um alerta baseado em tendência para suas consultas de pesquisa de log, para receber uma notificação quando um limite de 100% for atingido, você receberá um alerta quando o crescimento do valor de contagem de exceções atual for >100% quando comparado ao valor de EWMA anterior.  

Crescimento percentual = (t - EWMA antigo)/EWMA antigo * 100
Aqui, às 14h,
Crescimento percentual= (453-38,57)/38,57*100 = 1074,48 %

Nesse caso, você receberá o alerta às 14h, pois o crescimento da contagem de exceções aumentou para 1.074% quando comparado ao valor anterior de EWMA de 38,57.