Hey, da ist etwas los ...

Der aktuelle Stand der Dinge

Du bist also so weit in die Serie gekommen, nett. Sie haben Ihren Elasticsearch-Cluster, Ihre Beats senden Daten und Sie haben Kibana mit hübschen Dashboards eingerichtet. Das ist in Ordnung und gut, aber es ist eine Samstagnacht und ein schlechtes Systemupdate, das einen Ihrer Knoten zum Erliegen gebracht hat, und die anderen beiden bewältigen die Last kaum.

Einige Hintergrundinformationen zuerst

ODFE wird mit dem vorinstallierten Alerting-Plugin geliefert. Auf diese Weise können wir Warnungen einrichten, wenn bestimmte Bedingungen erfüllt sind.

Es gibt drei Möglichkeiten, Warnungen in ODFE einzurichten: Visuelle Diagramme, Extraktionsabfragen und der Anomaliedetektor.

Der erste ist ziemlich selbsterklärend, daher konzentrieren wir uns auf Extraktionsabfragen. Der Anomaliedetektor ist ein interessantes Thema, aber weit außerhalb des Rahmens dieser Serie.

Warnungen bestehen aus drei wichtigen Abschnitten: Monitore, Auslöser und Aktionen. Ein Monitor ist eine Abfrage, die jede bestimmte Zeit ausgeführt wird. Jeder Monitor hat eine Reihe von Auslösern. Ein Trigger ist eine Bedingung, die basierend auf der Antwort der Extraktionsabfrage des Monitors ausgewertet wird. Wenn eine Triggerbedingung als wahr ausgewertet wird, werden eine Reihe von Aktionen ausgeführt.

In einfachen Worten:

  • Monitor: Wie viele ungelesene E-Mails habe ich?
  • Auslöser: E-Mails> 5
  • Aktion: Slack-Nachricht senden

Bevor wir beginnen, müssen wir ein Ziel für Benachrichtigungen einrichten. Im Abschnitt Weitere nützliche Informationen finden Sie einen Link zum Hinzufügen einer Incoming Webhook-App zu Slack. Beachten Sie die Webhook-URL.

Gehen Sie zum Abschnitt "Warnung", wechseln Sie zur Registerkarte "Ziele" und klicken Sie auf "Ziel hinzufügen". Geben Sie ihm einen Namen, wählen Sie "Slack" als Typ und fügen Sie dort Ihre Webhook-URL ein.

ODFE hat kürzlich E-Mail-Benachrichtigungen veröffentlicht und unterstützt auch benutzerdefinierte Webooks für andere Messaging-Apps wie Teams.

Wenn Sie fertig sind, klicken Sie auf "Erstellen".

Einrichten eines Monitors

Zunächst benötigen wir eine Abfrage. Eine grundlegende Elastcsearch-Abfrage sieht ungefähr so ​​aus:

Durchschnittliche Speichernutzung in den letzten 5 Minuten

Glücklicherweise müssen Sie dies nicht für jede Abfrage schreiben. Der Visualisierungsabschnitt ist im Grunde ein visueller Abfrageeditor.

Da wir eine einfache Zahl wollen, können wir die metrische Visualisierung verwenden. Ändern Sie die Aggregation in "Durchschnitt", wählen Sie "system.memory.actual.used.pct" als Feld aus, klicken Sie auf "Aktualisieren" und Sie sind im Grunde fertig.

Jetzt müssen wir die Abfrage bekommen. In der Nähe der Schaltfläche "Speichern" befindet sich eine Schaltfläche "Prüfen". Klicken Sie darauf und ändern Sie die Option oben rechts mit dem Namen "Ansicht: Daten" in "Ansicht: Anforderungen", indem Sie darauf klicken und die Option aus der Dropdown-Liste auswählen. Kibana zeigt Ihnen drei Registerkarten: Statistik (sehr nützlich, um die Abfrageleistung zu messen), Anforderung und Antwort. Klicken Sie auf Anfrage und dann auf das Kopiersymbol oben rechts auf der Registerkarte Anfrage.

Fügen Sie diese Abfrage in Ihren bevorzugten Code-Editor ein.

Jetzt können wir mit der Erstellung eines Alarms fortfahren. Gehen Sie zum Abschnitt Warnung und klicken Sie auf die Registerkarte Monitore. Klicken Sie auf Monitor erstellen, geben Sie ihm einen Namen und wählen Sie in der Dropdown-Liste "Definitionsmethode" die Option "Mit Extraktionsabfrage definieren" aus.

Geben Sie in der Index-Dropdown-Liste "metricbeat- *" ein und drücken Sie die Eingabetaste. Dadurch wird der Raum darunter in zwei Teile geteilt. Links definieren Sie eine Abfrage und rechts sehen Sie die Antwort, nachdem Sie auf "Ausführen" geklickt haben.

Ersetzen Sie die vorhandene Abfrage durch die Abfrage, die Sie aus der Visualisierung erhalten haben, und klicken Sie oben rechts auf die Schaltfläche "Ausführen".

Ihre Antwort sollte ungefähr so ​​aussehen:

Das Problem dabei ist, dass das Ergebnis dasselbe ist, wenn Sie es in einer Stunde ausführen. Dies liegt daran, dass in unserer Extraktionsabfrage die Daten statisch sind.

Hier ist unser Problem:

Statische Zeit

Um dies zu beheben, ändern Sie die Abfrage so, dass sie ungefähr so ​​aussieht:

Dynamische Zeit

Wenn Sie also mehrmals auf die Schaltfläche "Ausführen" klicken, wird sich der Wert ändern.

Scrollen Sie nach unten und klicken Sie auf "Erstellen". Dadurch gelangen Sie zum Bildschirm "Trigger erstellen".

Trigger erstellen

Legen Sie zunächst den Triggernamen fest und wählen Sie einen Schweregrad aus (dies ist beliebig). Unten sehen Sie die Antwort für die Monitor-Abfrage und direkt unter der Antwort haben Sie die Auslösebedingung . Standardmäßig lautet die Triggerbedingung "ctx.results [0] .hits.total.value> 0".

Im Moment konzentrieren wir uns auf alles, was nach "ctx.results [0]" steht. Die Standardabfrage wertet aus, ob die Anzahl der von der Abfrage gelesenen Dokumente größer als 0 ist. Dies ist für uns nicht von Nutzen, wir benötigen die Speichernutzung. Wie Sie unsere Antwort sehen , das Feld hat aggregations.1.value wich ist , was wir wollen, so dass Ihre Triggerbedingung , dies ändern:

"Ctx.results [0] .aggregations.1.value> 0"

Scrollen Sie ein wenig nach unten und klicken Sie auf die Schaltfläche "Ausführen". Beobachten Sie, wie sich die Antwort auf die Auslösebedingung auf "true" ändert. Setzen Sie nun den Wert nach dem ">" - Zeichen für 80% auf etwa 0,8, da der Speicher immer über 0% liegt.

Aktion einrichten

Unterhalb der Schaltfläche "Ausführen" können Sie Aktionen konfigurieren. Hier können Sie ein Ziel mit einer Nachricht benachrichtigen.

Geben Sie der Aktion zunächst einen Namen und wählen Sie das zuvor erstellte Ziel aus. Geben Sie einen Betreff für die Nachricht ein und scrollen Sie ein wenig nach unten. Hier sehen Sie die Nachrichtenvorschau.

Wir möchten Variablen in unsere Nachrichten aufnehmen, damit wir nicht für jeden Server einen Trigger erstellen müssen. Verwenden Sie die folgende Vorlage, um eine Variable aus der Antwort in die Nachricht aufzunehmen:

Beispielnachricht für die Speichernutzung

Auf der rechten Seite des Bildschirms befindet sich die Schaltfläche "Testnachricht senden", mit der Sie Ihr Ziel testen können.

Um eine Benachrichtigungsflut zu vermeiden, wenn etwas schief geht, aktivieren Sie das Kontrollkästchen "Aktionsdrosselung aktivieren" und geben Sie eine angemessene Anzahl von Minuten ein, um zu warten, bevor Sie eine weitere Benachrichtigung senden.

Zum Abschluss klicken Sie auf Erstellen.

Nächste Schritte

In der nächsten und letzten Folge dieser Serie werden wir einige Einstellungen für Leistung und Verfügbarkeit überprüfen und einige Dinge mitteilen, die ich auf die harte Tour gelernt habe.

Siehe andere verwandte Artikel .

Andere nützliche Informationen

Lockere eingehende Webhooks

Suggested posts

Migration von Solr zu Opensearch

Migration von 100 Millionen Dokumenten von Solr zu OpenSearch

Migration von Solr zu Opensearch

Wir haben solr für unsere E-Commerce-Such-/Feed-/Autosuggest-/Personalisierungs-Anwendungsfälle verwendet. Herausforderungen mit Solr-Cluster ELK wird jetzt mit elastischer Premium-Lizenz geliefert.

Aufbau eines groß angelegten unbeaufsichtigten Modellsystems zur Erkennung von Anomalien – Teil 2

Erstellen von ML-Modellen mit Beobachtbarkeit im Maßstab

Aufbau eines groß angelegten unbeaufsichtigten Modellsystems zur Erkennung von Anomalien – Teil 2

Von Rajeev Prabhakar, Han Wang, Anindya Saha In unserem vorherigen Blog haben wir die verschiedenen Herausforderungen besprochen, denen wir bei der Modellüberwachung gegenüberstanden, und unsere Strategie zur Bewältigung einiger dieser Probleme. Wir haben kurz die Verwendung von Z-Scores zur Identifizierung von Anomalien erwähnt.

Related posts

Die Cowboy-Lüge

Wie Megakonzerne den Amerikanern eine fette Lüge verkauften

Die Cowboy-Lüge

Es ist ein strahlend goldener Morgen in den sanften Hügeln des Westens, während die ersten Sonnenstrahlen das gefrorene Gras auf den Ebenen erhellen. Eine Herde friedlicher Angus-Rinder, pechschwarz und massig, zeichnet sich vor dem Sonnenaufgang ab, während sie einen ausgetretenen Pfad entlang zu einem Ort geht, den sie alle gut kennen; die Frühstücksbar.

Das erste Buch zum Thema „High“ für Kinder

Das erste Buch zum Thema „High“ für Kinder

(Warnung – das ist Satire, die fröhlich subversiv sein soll – definitiv nichts für Kinder) Sie haben gesehen, wie Ihre Eltern sich in der Küche versteckten und diese stinkenden Zigaretten rauchten. Sie sagen es dir.

Ist Kunst jemals unpolitisch?

Ist Kunst jemals unpolitisch?

Gestern haben wir die Tür zum diesjährigen Eurovision Song Contest mit einem glitzernden, chaotischen großen Finale geschlossen, bei dem die schwedische Sängerin Loreen die Trophäe mit nach Hause nahm. Sie war damit die erste Frau, die zweimal gewann, und holte die Krone 50 Jahre nach dem Gewinn des Wettbewerbs durch ABBA zurück nach Schweden mit „Waterloo“. Sie entwickelten sich zu einem der größten Acts im Kanon der Popmusik.

Dieses Bedrohungsarchiv: Band 7 Black Basta

Dieses Bedrohungsarchiv: Band 7 Black Basta

In der heutigen vernetzten Welt ist die Bedrohung durch Cyberangriffe größer denn je. Cyberkriminelle und nationalstaatliche Akteure versuchen ständig, Schwachstellen auszunutzen und wertvolle Daten zu stehlen, was ein erhebliches Risiko für Unternehmen jeder Größe darstellt.