Was ist Observability?
Als natrliche Weiterentwicklung von Monitoring-Verfahren hat der Begriff "Observability" in Kreisen von Softwareentwicklern seit 2018 enorm an Bedeutung gewonnen. Observability - Definition  Durch die Zusammenfhrung der Rohdaten von Metriken, Ereignissen, Logs und Traces ermglicht Observability Entwicklern, sich in Echtzeit ein Bild davon zu machen, wie ihre Softwaresysteme funktionieren und wo Probleme auftreten knnten. Das Konzept selbst ist jedoch tief in den allgemeineren, technischen Prinzipien der Kontrolltheorie verwurzelt, wonach das Ma fr den internen Zustand eines Systems nur anhand seines externen Outputs beobachtet werden kann. Die durch Microservices und Container getriebene Umstellung auf verteilte Softwaresysteme verleiht dem alten Mantra "Was Sie nicht messen knnen, knnen Sie nicht managen" neue Relevanz. Observability vs. Monitoring  Observability mag im ersten Moment nach einem Rebranding von gewhnlichem Anwendungs-Monitoring klingen - und eine solche Grundskepsis gegenber Buzzwords scheint auch berechtigt. Es gibt jedoch einen kategorischen Unterschied zwischen den Begriffen: Whrend Monitoring ein Vorgehen beschreibt, ist mit Observability das Attribut eines Systems gemeint. Der Engineering Manager und Technik-Blogger Ernest Mueller schrieb 2018 dazu: "Observability beschreibt die Eigenschaft eines Systems. Man kann ein System mit verschiedenen Instrumenten berwachen, aber wenn sein Zustand verhindert, herauszufinden, was da drin eigentlich vor sich geht, dann steckt man fest." Observability wird immer wichtiger, weil Entwickler ihre Anwendungen immer fter in viele kleine Teile - sogenannte Microservices - zerlegen, sie in Containern auf verteilten Cloud-Servern hosten und sie kontinuierlich unter dem wachsamen Augen des Devops-Teams bereitstellen. "Durch den Trend zu verteilten Systemen entwickeln sich die Methoden fr deren Aufbau und Betrieb schnell weiter - was transparente Services und Infrastruktur wichtiger denn je macht. Observability ist ein 'Superset' von Monitoring und gewhrt nicht nur Einblicke in den Zustand des Systems, sondern auch in die impliziten Fehlermodi", schreibt die Softwareentwicklerin Cindy Sridharan in ihrem Buch "Distributed Systems Observability". Darber hinaus liefere ein System mit Observability reichlich Kontext ber seine innere Funktionsweise, so Sridharan, was die Mglichkeit erffne, tiefere, systemische Probleme aufzudecken. Observability - 3 Sulen  Es gibt drei allgemein anerkannte Sulen der Observability: Metriken, Traces und Logs. Fr sich genommen reprsentiert jede Sule die Fhigkeit des Entwicklers, seine Systeme zu evaluieren und zu berwachen. Werden sie zusammengebracht und in (nahezu) Echtzeit dargestellt, kann ein System mit Observability ausgestattet werden. Dieser Vorgang ist allerdings kein Selbstlufer, wie Sridharan klarstellt: "Es geht nicht um Logs, Metriken oder Traces, sondern darum, beim Debugging datenorientiert zu agieren und Feedback zu nutzen, um das Produkt schrittweise zu verbessern." Greg Ouillon, CTO beim Monitoring-Anbieter New Relic, sieht Observability als Produkt der durch das Cloud-Zeitalter hervorgebrachten Software-Engineering- und Monitoring-Trends. "Observability adressiert die resultierenden Herausforderungen, indem es Monitoring neu denkt und an das neue Technologie-Paradigma anpasst. Durch die Bereitstellung einer vollstndig vernetzten Ansicht aller Software-Telemetriedaten an einem Ort ermglicht Observability die proaktive Leistungskontrolle digitaler Architekturen in Echtzeit, die Beschleunigung von Innovation und Softwareentwicklung sowie die Reduzierung von Arbeitsaufwand und Betriebskosten." Observability - Tools und Anbieter  Die Anbieterlandschaft ist sehr heterogen, denn die Hersteller von Logging-, Monitoring- und Application-Performance-Management-Software erheben alle den Anspruch, Observability Tools anzubieten. "Vor einem Jahr war Observability noch ein ntzlicher Begriff, jetzt entwickelt er sich zu einem Buzzword", kommentiert Gartner-Analyst Josh Chessman. Die Log-Monitoring-Spezialisten Splunk und Sumo Logic beispielsweise haben ihre Plattformen mit neuen Funktionen (und Akquisitionen) in Richtung End-to-End-Observability weiterentwickelt. Zu den bernahmen von Splunk gehrten im Jahr 2020 Flowmill - ein Spezialist fr Cloud-Netzwerk-Performance-Monitoring - und der User- und Application-Performance-Monitoring-Anbieter Plumbr. Der eine Milliarde Dollar schwere Zukauf des Echtzeit-Monitoring-Unternehmens SignalFx im Jahr 2019 verdeutlicht, dass Splunk zum "One-Stop-Shop" fr Observability Tools werden will. Anbieter wie Dynatrace, Datadog, New Relic, SolarWinds, Scalyr (krzlich vom Sicherheitsspezialisten SentinelOne bernommen) und der Newcomer Honeycomb wollen Observability ebenfalls als Service fr Entwickler anbieten. An der Open-Source-Front hat Grafana Labs eine sehr beliebte Plattform fr Monitoring und Observability aufgebaut. Apache Skywalker ist ein weiteres, quelloffenes Observability Tool, das es Systemadministratoren ermglicht, Probleme zu identifizieren, wichtige Warnmeldungen zu erhalten und den Gesamtzustand des Systems zu berwachen - mit oder ohne Service Mesh. Schnell an Popularitt gewonnen hat auerdem die OpenTelemetry-Initiative. Das Sandbox-Projekt, das aus dem Zusammenschluss von OpenCensus und OpenTracing hervorging, gehrt zur Cloud Native Computing Foundation (CNCF) und findet als aufstrebender Industriestandard fr Observability breite Untersttzung. Fr Entwickler, die ihr eigenes Observability Stack aufbauen wollen, knnen Open-Source-Werkzeuge wie Prometheus (Metriken), Logstash (Logs) und Jaegar (Tracing) die Bausteine liefern, die fr die drei Sulen der Observability ntig sind. Der Heilige Gral fr alle Anwender und Anbieter im Bereich Observability besteht darin, so weit zu automatisieren, dass Probleme automatisch erkannt und behoben werden knnen, bevor sie sich auf die Anwender auswirken. Der Idealzustand wre eine Software, die Fehler selbstndig behebt, bevor die Entwickler diese bemerken. Eine wachsende Gemeinschaft von Startups und Open-Source-Projekten befasst sich mit den kommenden Observability-Herausforderungen. Zum Beispiel die Open-Source-Plattform Signoz.io (Observability von Kubernetes und Microservices) oder Jeli - ein Projekt, das von einem ehemaligen Netflix-Ingenieur gegrndet wurde und sich auf Tools fokussiert, mit denen Entwickler ermitteln knnen, an welchen Stellen ihr Code nicht zur Infrastruktur passt. Observability - Kultur nicht vergessen  Dabei sollten Sie sich bewusst machen, dass drei Sulen nicht fr Observability ausreichen. Menschen und Prozesse mssen ebenfalls auf gemeinsame Ziele ausgerichtet werden. Observability sollte als Mittel wahrgenommen werden, zuverlssigere Software fr Kunden zu entwickeln und zu betreiben. "Der Wert der Observability eines Systems zeigt sich in erster Linie an dem geschftlichen und organisatorischen Wert, der sich daraus ergibt", schreibt die Softwareentwicklerin Sridharan. "In der Lage zu sein, Produktionsprobleme schnell zu diagnostizieren, sorgt nicht nur fr eine gute User Experience, sondern ebnet auch den Weg zur humanen und nachhaltigen Bedienbarkeit von Diensten." Diese beiden Anreize - bessere Ergebnisse fr die Kunden und ein potenziell leichteres Leben fr die Software-Ingenieure - sollten ausreichen, um vielen Unternehmen die Nutzung von Observability Tools schmackhaft zu machen. Dieser Artikel basiert auf einem Beitrag unserer US-Schwesterpublikation Infoworld.com.