Trendbasierte Warnungen mithilfe des EWMA-Algorithmus

Trendbasierte Warnmeldungen mit dem EWMA-Algorithmus

Bei der Konfiguration von AppLogs-Warnmeldungen müssen Sie angeben, ob Ihre Warnmeldung zähl- oder trendbasiert sein soll. Bei trendbasierten Warnmeldungen nutzt Site24x7 den Exponentially Weighted Moving Average (EWMA)-Algorithmus, um Durchschnittswerte zu berechnen und ungewöhnliche Spitzen und Änderungen im Protokolltrend zu identifizieren.

Was ist der EWMA-Algorithmus?

Der EWMA bezieht sich auf einen Durchschnittswert, der verwendet wird, um die Wertentwicklung durch Überprüfung der Ergebnisse und des Outputs zu verfolgen. Er berücksichtigt unterschiedliche Faktoren, weist dem Wert eine Gewichtung zu, verfolgt die Ergebnisse zur Leistungsbewertung und empfiehlt Verbesserungen.

Die Gewichtung für einen EWMA nimmt exponentiell ab, je weiter sie sich mit der Zeit entfernt. Da der EWMA außerdem den zuvor berechneten Durchschnitt enthält, ist das Ergebnis des EWMA kumulativ. Aus diesem Grund tragen alle Datenpunkte zum Ergebnis bei, aber der Beitragsfaktor wird für den nächsten Zeitraum, in dem der EWMA berechnet wird, reduziert.

Der gleitende Durchschnitts-EWMA für eine bestimmte Zeit t wird wie folgt berechnet:
EWMA(t) = a * x(t) + (1-a) * EWMA(t-1)

Hier ist
EWMA(t) = gleitender Durchschnitt über die Zeit t.
a = Grad des Mischparameterwerts zwischen 0 und 1. Dieser Parameter gibt an, mit welcher Rate ältere Daten in die Berechnung einfließen.
x(t) = Wert einer Warnabfrageausgabe über die Zeit t.

Wenn a=1 wurden nur die neuesten Daten zur Messung des EWMA verwendet. 
Wenn a gegen 0 geht, wird älteren Daten mehr Gewicht beigemessen.
Wenn a sich 1 nähert, wird neueren Daten mehr Gewicht beigemessen.

Anwendungsfall: IIS-Zugriffsprotokolle

Betrachten wir den Anwendungsfall von Zugriffsprotokollen für Internetinformationsdienste (IIS) mit einem Fehlercode 500. In diesem Fall wird der Trend für die konfigurierte Anzahl von Tagen beobachtet, wenn trendbasierte Warnmeldungen mit einer Überprüfungshäufigkeit von einer Stunde konfiguriert sind, und Sie erhalten Warnmeldungen auf der Grundlage des gleitenden Durchschnittswerts, wenn die Anzahl der Ausnahmen plötzlich ansteigt.

Betrachten wir zum Beispiel die Ausnahmewerte für jede Stunde, wie unten dargestellt:
a = 0,3 (Site24x7 legt den Wert von a auf 0,3 fest, da dies älteren Daten mehr Gewicht verleiht) 
Zeit (t)
Wert bei t
EWMA
Prozentuales Wachstum
10am
27
27
0
11am
30
27.9
11.11
Mittag
40
31.53
43.37
1pm
55
38.57
74.44
2pm
453
162.9
1074.49
3pm
105
145.53
-35.54

Wenn Sie für Ihre Protokollsuchanfragen eine trendbasierte Warnmeldung konfiguriert haben, um eine Benachrichtigung zu erhalten, sobald ein Schwellenwert von 100 % erreicht wird, erhalten Sie eine Warnmeldung, wenn der aktuelle Wert für die Ausnahmezunahme im Vergleich zum vorherigen EWMA-Wert >100 % beträgt.  

Prozentuales Wachstum = (t -old EWMA)/old EWMA * 100
In diesem Fall um 14.00 Uhr:
Prozentuales Wachstum = (453-38,57)/38,57*100 = 1074,48 %

In diesem Fall erhalten Sie die Warnmeldung um 14.00 Uhr, da die Anzahl der Ausnahmen im Vergleich zum vorherigen EWMA-Wert von 38,57 um 1074 % gestiegen ist.