Verwendung von Kibana Dashboards und Visualisierungen

Einführung

Kibana 4 ist eine Analyse- und Visualisierungsplattform, die auf Elasticsearch aufbaut, um Ihnen ein besseres Verständnis Ihrer Daten zu ermöglichen. In diesem Lernprogramm werden Sie mit Kibana vertraut gemacht, indem Ihnen gezeigt wird, wie Sie die Benutzeroberfläche zum Filtern und Visualisieren von Protokollnachrichten verwenden, die von einem Elasticsearch ELK-Stapel gesammelt wurden. Wir werden die Hauptkomponenten der Benutzeroberfläche behandeln und zeigen, wie Suchvorgänge, Visualisierungen und Dashboards erstellt werden.

Voraussetzungen

Dieses Tutorial ist der dritte Teil der Reihe * Centralized Logging with Logstash and Kibana *.

Es wird davon ausgegangen, dass Sie ein funktionierendes ELK-Setup haben. In den Beispielen wird davon ausgegangen, dass Sie Syslog- und Nginx-Zugriffsprotokolle erfassen. Wenn Sie diese Arten von Protokollen nicht erfassen, sollten Sie in der Lage sein, die Demonstrationen so zu ändern, dass sie mit Ihren eigenen Protokollnachrichten funktionieren.

Wenn Sie dieses Lernprogramm genau wie dargestellt ausführen möchten, sollten Sie die folgenden Einstellungen vornehmen, indem Sie die ersten beiden Lernprogramme in dieser Reihe ausführen:

Lassen Sie uns einen Überblick über die Kibana-Benutzeroberfläche geben, wenn Sie bereit sind, fortzufahren.

Kibana Interface Übersicht

Die Kibana-Oberfläche ist in vier Hauptbereiche unterteilt:

  • Entdecken

  • Visualisieren

  • Instrumententafel

  • die Einstellungen

Wir werden die Grundlagen der einzelnen Abschnitte in der angegebenen Reihenfolge durchgehen und zeigen, wie die einzelnen Teile der Benutzeroberfläche verwendet werden können.

Kibana entdecken

Wenn Sie sich zum ersten Mal mit Kibana 4 verbinden, werden Sie zur Discover-Seite weitergeleitet. Standardmäßig werden auf dieser Seite alle zuletzt empfangenen Protokolle Ihres ELK-Stacks angezeigt. Hier können Sie anhand von * Suchanfragen * bestimmte Protokollnachrichten filtern und suchen und dann die Suchergebnisse mit dem * Zeitfilter * auf einen bestimmten Zeitraum eingrenzen.

Hier ist eine Aufschlüsselung der Kibana Discover-Oberflächenelemente:

  • * Suchleiste: * Direkt unter dem Hauptnavigationsmenü. Verwenden Sie diese Option, um bestimmte Felder und / oder ganze Nachrichten zu durchsuchen

  • * Zeitfilter: * Oben rechts (Uhrensymbol). Verwenden Sie diese Option, um Protokolle basierend auf verschiedenen relativen und absoluten Zeitbereichen zu filtern

  • * Feldauswahl: * Links unter der Suchleiste. Wählen Sie Felder aus, um zu ändern, welche in der Protokollansicht angezeigt werden.

  • * Datumshistogramm: * Balkendiagramm unter der Suchleiste. Standardmäßig wird hier die Anzahl aller Protokolle im Verhältnis zur Zeit (x-Achse) angezeigt, die mit dem Such- und Zeitfilter übereinstimmen. Sie können auf Balken klicken oder klicken und ziehen, um den Zeitfilter einzugrenzen

  • * Protokollansicht: * Unten rechts. Mit dieser Option können Sie einzelne Protokollnachrichten anzeigen und nach Feldern gefilterte Protokolldaten anzeigen. Wenn keine Felder ausgewählt sind, werden ganze Protokollnachrichten angezeigt

Diese Animation zeigt einige der Hauptfunktionen der Discover-Seite:

Hier ist eine schrittweise Beschreibung dessen, was gerade ausgeführt wird:

  1. Wenn Sie das Feld „Typ“ ausgewählt haben, das die Anzeige für jeden Protokolldatensatz (unten rechts) einschränkt, wird standardmäßig die gesamte Protokollnachricht angezeigt

  2. Gesucht nach + Typ:" nginx-access "+, der nur mit Nginx-Zugriffsprotokollen übereinstimmt

  3. Das neueste Nginx-Zugriffsprotokoll wurde erweitert, um es genauer zu betrachten

Beachten Sie, dass die Ergebnisse auf die „letzten 15 Minuten“ beschränkt sind. Wenn Sie keine Ergebnisse erhalten, stellen Sie sicher, dass im angegebenen Zeitraum Protokolle erstellt wurden, die Ihrer Suchanfrage entsprechen.

Die gesammelten und gefilterten Protokollnachrichten hängen von Ihren Konfigurationen für Logstash und Logstash Forwarder ab. In unserem Beispiel erfassen wir die Syslog- und Nginx-Zugriffsprotokolle und filtern sie nach „Typ“. Wenn Sie Protokollnachrichten erfassen, die Daten jedoch nicht in bestimmte Felder filtern, ist die Abfrage schwieriger, da Sie bestimmte Felder nicht abfragen können.

Suchsyntax

Die Suche bietet eine einfache und leistungsstarke Möglichkeit, eine bestimmte Teilmenge von Protokollnachrichten auszuwählen. Die Suchsyntax ist ziemlich selbsterklärend und ermöglicht boolesche Operatoren, Platzhalter und Feldfilter. Wenn Sie beispielsweise nach Nginx-Zugriffsprotokollen suchen möchten, die von Google Chrome-Nutzern erstellt wurden, können Sie nach "+" suchen: "nginx-access" AND agent: "chrome" + ". Sie können auch nach bestimmten Hosts oder Client-IP-Adressbereichen oder nach anderen in Ihren Protokollen enthaltenen Daten suchen.

Wenn Sie eine Suchanfrage erstellt haben, die Sie behalten möchten, können Sie dies tun, indem Sie auf das Symbol * Suche speichern * und anschließend auf die Schaltfläche * Speichern * klicken, wie in der folgenden Animation dargestellt:

image: https://assets.digitalocean.com/articles/elk/kibana/2-save-search.gif [So speichern Sie eine Kibana-Suche]

Gespeicherte Suchen können jederzeit durch Klicken auf das Symbol * Gespeicherte Suche laden * geöffnet werden. Sie können auch beim Erstellen von Visualisierungen verwendet werden.

Wir speichern die Zeichenfolge "+": "nginx-access" + "search" als "type nginx access" und erstellen daraus eine Visualisierung.

Kibana Visualisieren

Auf der Seite Kibana Visualize können Sie Ihre eigenen benutzerdefinierten Visualisierungen erstellen, ändern und anzeigen. Es gibt verschiedene Arten von Visualisierungen, von vertikalen Balken- und Kuchendiagrammen über Kachelkarten (zum Anzeigen von Daten auf einer Karte) bis hin zu Datentabellen. Visualisierungen können auch mit anderen Benutzern geteilt werden, die Zugriff auf Ihre Kibana-Instanz haben.

Wenn Sie zum ersten Mal Kibana-Visualisierungen verwenden, müssen Sie Ihre Feldliste neu laden, bevor Sie fortfahren können. Anweisungen dazu finden Sie im Unterabschnitt * Reload Field Data * unter Kibana Einstellungen.

Vertikales Balkendiagramm erstellen

Um eine Visualisierung zu erstellen, klicken Sie zunächst auf den Menüpunkt * Visualisieren *.

Entscheiden Sie, welche Art von Visualisierung Sie möchten, und wählen Sie sie aus. Wir erstellen ein * vertikales Balkendiagramm *, das ein guter Ausgangspunkt ist.

Nun müssen Sie eine Suchquelle auswählen. Sie können entweder eine neue Suche erstellen oder eine gespeicherte Suche verwenden. Wir werden uns für die letztere Methode entscheiden und die zuvor erstellte Suche * type nginx access * auswählen.

Das Vorschaudiagramm auf der rechten Seite ist zunächst ein durchgehender Balken (vorausgesetzt, Ihre Suche hat Protokollmeldungen gefunden), da es nur aus einer Y-Achse der „Anzahl“ besteht. Das heißt, es wird lediglich die Anzahl der Protokolle angezeigt, die mit der angegebenen Suchabfrage gefunden wurden.

Um die Visualisierung nützlicher zu gestalten, fügen wir einige neue * Buckets * hinzu.

Fügen Sie zunächst einen Bucket * X-axis * hinzu, klicken Sie dann auf das Dropdown-Menü * Aggregation * und wählen Sie "Date Histogram". Wenn Sie auf die Schaltfläche * Übernehmen * klicken, wird der einzelne Balken entlang der X-Achse in mehrere Balken aufgeteilt. Jetzt wird die Anzahl als mehrere Balken angezeigt, die in Zeitintervalle unterteilt sind (die durch Auswahl eines Intervalls in der Dropdown-Liste geändert werden können) - ähnlich wie auf der Erkennungsseite.

Wenn wir das Diagramm etwas interessanter gestalten möchten, können wir auf die Schaltfläche * Subaggregation hinzufügen * klicken. Wählen Sie den Bucket-Typ * Split Bars *. Klicken Sie auf das Dropdown-Menü * Sub Aggregation * und wählen Sie "Significant Terms" aus. Klicken Sie dann auf das Dropdown-Menü * Field * und wählen Sie "clientip.raw" aus. Klicken Sie dann auf das Feld * Size * und geben Sie "10" ein. Klicken Sie auf die Schaltfläche * Übernehmen *, um das neue Diagramm zu erstellen.

Hier ist ein Screenshot von dem, was Sie an dieser Stelle sehen sollten:

Wenn die angezeigten Protokolle von mehreren IP-Adressen generiert wurden (d. H. Wenn mehr als eine Person auf Ihre Site zugreift, sehen Sie, dass jeder Balken in farbige Segmente unterteilt ist. Jedes farbige Segment stellt die Anzahl der Protokolle dar, die von einer bestimmten IP-Adresse (d. H. ein bestimmter Besucher Ihrer Site) und das Diagramm zeigt die bis zu 10 verschiedenen Segmente (aufgrund der Größeneinstellung). Sie können mit der Maus auf eines der Elemente im Diagramm klicken, um einen Drilldown zu bestimmten Protokollnachrichten durchzuführen.

Wenn Sie bereit sind, Ihre Visualisierung zu speichern, klicken Sie oben auf das Symbol * Save Visualization * (Visualisierung speichern), benennen Sie es und klicken Sie auf die Schaltfläche * Save * (Speichern).

Erstellen Sie eine weitere Visualisierung

Bevor Sie mit dem nächsten Abschnitt fortfahren, in dem wir zeigen, wie ein Dashboard erstellt wird, sollten Sie mindestens eine weitere Visualisierung erstellen. Probieren Sie die verschiedenen Visualisierungstypen aus.

Sie können beispielsweise ein Kreisdiagramm der fünf besten Protokolltypen (höchste Anzahl) erstellen. Klicken Sie dazu auf * Visualisieren * und wählen Sie * Kreisdiagramm . Verwenden Sie dann eine * neue Suche * und lassen Sie die Suche als "" (d. H. alle Ihre Protokolle). Wählen Sie dann den Bucket * Split Slices *. Klicken Sie auf die Dropdown-Liste * Aggregation * und wählen Sie "Significant Terms" aus. Klicken Sie auf die Dropdown-Liste * Field * und wählen Sie "type.raw" aus. Klicken Sie dann auf das Feld * Size * und geben Sie "5" ein. Klicken Sie nun auf die Schaltfläche * Übernehmen * und speichern Sie die Visualisierung als “Top 5”.

Hier ist ein Screenshot der Einstellungen, die gerade beschrieben wurden:

Da in unserem Beispiel nur Syslogs und Nginx-Zugriffsprotokolle erfasst werden, enthält das Kreisdiagramm nur zwei Segmente.

Nachdem Sie die Visualisierungen erstellt haben, können Sie ein Kibana-Dashboard erstellen.

Kibana-Dashboard

Auf der Seite Kibana Dashboard können Sie Ihre eigenen benutzerdefinierten Dashboards erstellen, ändern und anzeigen. Mit einem Dashboard können Sie mehrere Visualisierungen auf einer einzigen Seite kombinieren und sie dann filtern, indem Sie eine Suchabfrage bereitstellen oder Filter auswählen, indem Sie auf Elemente in der Visualisierung klicken. Dashboards sind nützlich, wenn Sie sich einen Überblick über Ihre Protokolle verschaffen und Korrelationen zwischen verschiedenen Visualisierungen und Protokollen herstellen möchten.

Dashboard erstellen

Um ein Kibana-Dashboard zu erstellen, klicken Sie zunächst auf den Menüpunkt * Dashboard *.

Wenn Sie zuvor noch kein Dashboard erstellt haben, wird meistens eine leere Seite mit dem Titel "Bereit für den Einstieg?" Angezeigt. Wenn Sie diesen Bildschirm nicht sehen (d. H. Es sind bereits Visualisierungen im Dashboard vorhanden. Klicken Sie auf das Symbol * Neues Dashboard * (rechts neben der Suchleiste), um dorthin zu gelangen.

Diese Animation zeigt, wie Sie Ihrem Dashboard Visualisierungen hinzufügen können:

Hier ist eine Aufschlüsselung der Schritte, die ausgeführt werden:

  1. Klicken Sie auf Add Visualization icon

  2. Kreisdiagramm "Log Counts" und Histogramm "Nginx: Top 10 Client IP" hinzugefügt

  3. Reduziert das Menü Add Visualization

  4. Die Visualisierungen im Dashboard wurden neu angeordnet und in der Größe angepasst

  5. Klicken Sie auf das Symbol Dashboard speichern

Wählen Sie einen Namen für Ihr Dashboard, bevor Sie es speichern.

Dies sollte Ihnen eine gute Vorstellung davon geben, wie Sie ein Dashboard erstellen. Erstellen Sie alle Dashboards, die Sie für wünschenswert halten. Als Nächstes werden Dashboards verwendet.

Dashboard verwenden

Dashboards können weiter gefiltert werden, indem Sie eine Suchanfrage eingeben, den Zeitfilter ändern oder auf die Elemente in der Visualisierung klicken.

Wenn Sie beispielsweise im Histogramm auf ein bestimmtes Farbsegment klicken, können Sie mit Kibana nach dem aussagekräftigen Begriff filtern, den das Segment darstellt. Hier ist ein Screenshot eines Beispiels zum Anwenden eines Filters auf ein Dashboard:

Klicken Sie unbedingt auf die Schaltfläche "Jetzt anwenden", um die Ergebnisse zu filtern und die Visualisierungen des Dashboards neu zu zeichnen. Filter können nach Bedarf angewendet und entfernt werden.

Die Such- und Zeitfilter funktionieren genauso wie auf der Discover-Seite, mit der Ausnahme, dass sie nur auf die im Dashboard angezeigten Datenteilmengen angewendet werden.

Kibana-Einstellungen

Auf der Seite "Kibana-Einstellungen" können Sie verschiedene Dinge wie Standardwerte oder Indexmuster ändern. In diesem Tutorial halten wir es einfach und konzentrieren uns auf die Abschnitte * Indizes * und * Objekte *.

Felddaten neu laden

Wenn Sie Ihren Logstash-Daten neue Felder hinzufügen, z. Wenn Sie einen Filter für einen neuen Protokolltyp hinzufügen, müssen Sie möglicherweise Ihre Feldliste neu laden. Wenn Sie in Kibana keine gefilterten Felder finden können, müssen Sie die Feldliste neu laden, da diese Daten nur in regelmäßigen Abständen zwischengespeichert werden.

Klicken Sie dazu auf den Menüpunkt * Einstellungen * und dann auf “logstash- *” (unter * Indexmuster *):

Klicken Sie dann auf die gelbe Schaltfläche * Feldliste neu laden *. Klicken Sie zur Bestätigung auf die Schaltfläche * OK *.

Gespeicherte Objekte bearbeiten

Im Bereich Objekte können Sie gespeicherte Dashboards, Suchen und Visualisierungen bearbeiten, anzeigen und löschen.

Um dorthin zu gelangen, klicken Sie auf den Menüpunkt * Einstellungen * und dann auf das Untermenü * Objekte *.

Hier können Sie auf den Registerkarten die Objekte auswählen, die Sie bearbeiten, anzeigen oder löschen möchten:

Im Screenshot haben wir eine doppelte Visualisierung ausgewählt. Sie können sie bearbeiten, anzeigen oder löschen, indem Sie auf die entsprechende Schaltfläche klicken.

Fazit

Wenn Sie dieses Tutorial befolgt haben, sollten Sie ein gutes Verständnis für die Verwendung von Kibana 4 haben. Sie sollten wissen, wie Sie Ihre Protokollnachrichten durchsuchen und Visualisierungen und Dashboards erstellen.

Schauen Sie sich unbedingt das nächste Tutorial in dieser Reihe an: https://www.digitalocean.com/community/tutorials/how-to-map-user-location-with-geoip-and-elk-elasticsearch-logstash-and- kibana [So kartieren Sie den Benutzerstandort mit GeoIP und ELK]

Wenn Sie Fragen oder Anregungen haben, hinterlassen Sie bitte einen Kommentar!