ADMIN 11/13 stellt die besten Lösungen vor und klärt, ob Browser-Plugins, Anonymisierer sowie Verschlüsselung wirklich helfen. Weitere Themen: Small ... (mehr)

Visualisierung

Bis zur Version 1.2 verfügte Logstash über ein durchaus gruseliges Web-Interface, das zwar die rudimentäre Suche in ElasticSearch ermöglichte, jedoch keine Speicherung spezifischer Sichten und Filter erlaubte. Bereits seit einiger Zeit wurde in der Community ein alternatives Interface mit dem Namen Kibana 3 entwickelt, was nun endlich als fester Teil von Logstash ausgeliefert wird ( Abbildung 2 ).

Abbildung 2: Das neue ansehnliche Web-Interface Kibana 3 von Logstash.

Kibana 3 ist eine auf Javascript basierende Weboberfläche, welche direkt mit dem REST-Interface von ElasticSearch kommuniziert. Das Interface lässt sich mit

java -jar Logstash-1.2.x-flatjar.jar web

starten und ist per Default unter dem Port 9292 erreichbar. Die einzelnen Elemente des Dashboards lassen sich frei konfigurieren. Anschließend stehen die eigenen Filter und Dashboards allen anderen Anwendern dieser Instanz zur Verfügung. Die entsprechenden Datentypen werden in Kibana automatisiert gruppiert und lassen sich mithilfe des Interfaces schnell filtern ( Abbildung 3 ) und analysieren. Die Vielzahl von Panel-Types mit Diagrammen, Listen und Charts macht den Einstieg in das Customizing anfangs etwas schwierig, ist aber in sich konsistent. Nach einiger Zeit lassen sich neue Dashboards in wenigen Minuten zusammenstellen. Durch den direkten Zugriff auf ElasticSearch ist die Oberfläche auch in Umgebungen mit Logfiles im Terabyte-Bereich rasend schnell und macht einfach Spass.

Abbildung 3: Filtern von Daten in Kibana 3.

Eine weitere Möglichkeit der Visualisierung ist die Weitergabe von Informationen an Graphite. Nachdem man manuell Files erzeugt hat, kann man mithilfe der Ausgaben von »statsd« [11] mit Graphite Verbindung aufnehmen. Statsd ist ein Node.js-basierter Aggregationsserver, der verschiedene Events verarbeitet und anschließend an Graphite weitergeben kann. Listing 3 macht es etwas klarer: Hier werden Response-Codes mit Werten für Increment und Count an Statsd übergeben. In der Folge legt Graphite für alle übertragenen Namespaces Counter an ( Abbildung 4 ), die dann in Graphen eingebunden und visualisiert werden können. In Reihe geschaltet ergibt sich daraus ein Echtzeit-Monitoring auf alle aktuellen Response-Codes der zuliefernden Webserver. Ein solches Adhoc-Reporting der Log-Daten ermöglicht nicht nur eine schnelle Identifikation von Engpässen, sondern reichert auch klassische Performance-Daten aus dem Monitoring mit zusätzlicher Qualität an. Übrigens gibt es auch einen Nagios-Output für die Weiterleitung von Events an Nagios und Icinga.

Listing 3

statsd

 

Abbildung 4: Graphite bietet eine weitere Möglichkeit der Visualisierung.

Analyse ohne Grenzen

Durch die lose Kopplung der einzelnen Komponenten lassen die sich über verschiedene Infrastrukturbereiche hinweg verbinden. Die in Version 1.2 hinzugekommene konditionelle Verarbeitung erlaubt nun auch die regelbasierte Weiterleitung von Log-Informationen an verschiedene Outputs. Somit können mittels Filtern und Patterns Nachrichten auf Applikationsebene herausgesucht und weiterverarbeitet werden.

Seine volle Stärke spielt Logstash zusammen mit Tools wie Graphite, Statsd, ElasticSearch und natürlich auch Nagios und Icinga aus. Für alle diese Komponenten gibt es stabile Module, genauso wie für die Integration mit Chef oder Puppet, die den Rollout von Logshippern und Agents erleichtern. Auch die Konfiguration des Syslog-Inputs ist einfach und erlaubt die Zusammenführung der notwendigen Log-Informationen ohne zusätzliche Komponenten.

Da der Logstash-Entwickler Jordan Sissel vor einigen Tagen von der Firma ElasticSearch angeheuert wurde, ist auch in Richtung Suchserver-Integration in der nächsten Zeit noch einiges zu erwarten.

Durch viele vorhandene Konfigurationsbeispiele und eine lückenlose Dokumentation ist der Einstieg in Logstash in kurzer Zeit möglich. Schnell fragt man sich, wie man bisher ohne Logstash leben konnte. Die erste Projektgrundsatz von Logstash beschreibt das treffend: "If a newbie has a bad time, it's a bug".

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

Loganalyse mit dem ELK-Stack (2)

Im ersten Teil unserer Workshopserie postulierten wir den ELK-Stack als Basis eines umfassenden IT-Logbuchs. Der Befehlskette folgend wandert unsere Aufmerksamkeit nun von der konzeptionellen Strategie der Kommandobrücke in den Maschinenraum, wo wir beginnen, die Komponenten für die zentrale Loganalyse einzurichten.
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023