Observability: Die Herausforderungen beim Monitoring beherrschen

Seite 2: Die technischen Herausforderungen der Observability

Inhaltsverzeichnis

Es bringt Vorteile, Daten an zentraler Stelle zu sammeln und sie in Beziehung zueinander zu setzen. Das einfache Zugreifen auf alle relevante Daten – unabhängig von ihrer Quelle – ist genauso wichtig wie das Filtern, Durchsuchen sowie die Darstellung in Dashboards. Eine umfangreiche und schnelle Analyse kann nur ohne Kontextwechsel stattfinden. Die Fähigkeit, Daten aus unterschiedlichen Quellen mit dem Fokus auf einen einzigen Ablauf innerhalb einer Applikation zu betrachten, ist enorm wertvoll.

Observability bietet Administratoren eine fokussierte, aufschlussreiche sowie kontextualisierte Aufbereitung aller Daten in Echtzeit. Diese stehen an einem zentralen Ort zur Verfügung, an dem die Verantwortlichen die Probleme erkennen, die Ursachen analysieren und nach Lösungsmöglichkeiten suchen können. Die technischen Herausforderungen lassen sich in drei Bereiche aufteilen:

  1. Erfassen von Daten
  2. Kombination und Korrelation der Daten
  3. Visualisierung von Daten

Vor allem in sich schnell verändernden Umgebungen ist es wichtig, ein dynamisches Datenerfassungswerkzeug zur Hand zu haben. Entwickler, die eine Anwendung ändern und aktualisieren, Admins, die nicht nur Codes überwachen wollen, beide benötigen eine Monitoring-Anwendung, die sich schnell an neue Gegebenheiten und die jeweiligen Anforderungen anpasst. Hierfür gibt es mittlerweile etliche Tools, und in der Open-Source-Community entstehen ständig neue Werkzeuge. Einige bekannte Beispiele sind Nagios, Zabbix oder auch Icinga.

Es ist nicht trivial, Logfiles, Metriken und Anwendungs-Traces miteinander in Einklang zu bringen. Metriken sind Zeitreihendaten, während Logs aus Zeichenketten bestehen, die je nach Anwendung einen unterschiedlichen Aufbau haben. APM beziehungsweise Stack-Tracing ist so komplex, da es sich im Grunde genommen um unstrukturierte Daten handelt. In der Regel liegen diese Daten in verschiedenen Datenbanken – hier greifen dann Suchmaschinen, um Muster und Beziehungen zwischen den Datensätzen zu erkennen.

Zurück zum eigentlichen Ziel der Observability: eine umfassende Systemübersicht. Gesucht ist ein Werkzeug, in dem Admins nicht länger zwischen mehreren Monitoring-Tools hin und her wechseln und Daten manuell miteinander abgleichen müssen. Ideal ist ein übersichtliches Dashboard, das Datentypen aus unterschiedlichen Quellen korreliert und in dem Benutzer ihre KPIs (Key Performance Indicators) auswählen und die Beziehung zueinander darstellen können. Das kann zum Beispiel in Form von Diagrammen, Heatmaps oder Graphen erfolgen.

Ansprechende Visualisierung von Daten ermöglicht schnellen Überblick (Abb. 2)

(Bild: Elastic)

Es ist wichtig, dass sich ein Dashboard dynamisch an die sich ständig verändernde Infrastruktur anpasst. Im Idealfall bietet es die Möglichkeit, einen wiederholt auftretenden Überwachungsprozess durch ein einfaches visuelles Element zu ersetzen.

Eine andere wichtige Facette der Visualisierung ist die sogenannte Drill-down-Navigation. Sie verhindert, dass Admins zwischen Ansichten und Werkzeugen umschalten müssen. Es ist enorm hilfreich, dass sie mit einem einzigen Klick auf die zugrunde liegenden Daten zugreifen und sie durchsuchen können. Wenn beispielsweise eine Metrik einen kritischen Wert in Rot hervorhebt, dann soll ein Mausklick auf ihn die dazu passende Logfile-Meldung anzeigen. Ein weiterer Klick könnte dann den relevanten Trace finden und den problematischen Code anzeigen – alles in einer einzigen Benutzeroberfläche.