Beobachtbarkeitsmetriken verstehen: Arten, goldene Signale und Best Practices

Beobachtbarkeitsmetriken bieten Einblicke in die Leistung, das Verhalten und den Zustand von Anwendungen, Systemen und Infrastruktur. Dadurch ermöglichen sie Beobachtbarkeitspraktiken, bei denen der interne Zustand eines Systems durch die Untersuchung seiner Daten erfasst wird. Da Unternehmen immer mehr Daten sammeln, sind Beobachtbarkeitsmetriken ein wichtiges Telemetriesignal für die Beobachtbarkeit.
In der modernen Anwendungsentwicklung bezieht sich Beobachtbarkeit auf das Sammeln und Analysieren von Telemetriedaten – Protokolle, Metriken und Traces – aus einer Vielzahl von Quellen, um detaillierte Einblicke in das Verhalten der in Ihren Umgebungen laufenden Anwendungen zu erhalten. Beobachtbarkeitsmetriken sind die Telemetriesignale, die Unternehmen dabei helfen, ihre Abläufe zu verstehen und proaktive Monitoring-Prozesse zu schaffen.
Durch den Einsatz von Beobachtbarkeitsmetriken erhalten Unternehmen einen umfassenden Überblick über die Leistung ihres Technologie-Stacks und können so die Problemdiagnose und die Lösungszeiten verbessern. Wenn sie effektiv eingesetzt werden, können Beobachtbarkeitsmetriken wertvolle Einblicke liefern, die das Wachstum fördern und es Unternehmen ermöglichen, sich auf Innovationen zu konzentrieren.
Die drei Säulen der Observability
Die Grundlage der Beobachtbarkeit wird oft anhand von drei Säulen beschrieben:Metriken, Logs und Traces. Zusammen bieten sie wichtige Einblicke in die Leistung und das Verhalten von Systemen. Mit dem technologischen Fortschritt und den steigenden Anforderungen in Sachen Beobachtbarkeit bildet sich eine vierte Säule heraus: Profile.
Metriken
Metriken sind numerische Rohdatenpunkte, die von Hardware, Software und Websites erfasst werden. Bei der Messung von sogenannten „Known Knowns“ werden Metriken für das Monitoring der Ressourcennutzung, der Leistung und des Nutzerverhaltens verwendet. Mit anderen Worten: Metriken verraten Monitoring- und Observability-Teams, was in ihren Systemen passiert.
Kerntypen von Beobachtbarkeitsmetriken
Beobachtbarkeit ist eine Praxis, die Unternehmen einen 360-Grad-Blick auf ihre Umgebungen und Abläufe ermöglicht. Zu diesem Zweck stützt sich die Beobachtbarkeit auf die folgenden Kerntypen von Metriken:
Anwendungsmetriken: Anwendungsmetriken sind die von Anwendungen innerhalb eines Technologie-Stacks generierten und mit diesen verknüpften Telemetriedaten. Beispiele für häufig verwendete Metriken sind Reaktionszeiten, Durchsatz, Anfrageraten und Fehlerhäufigkeit. Mithilfe dieser Metriken können Techniker die Leistung und Verfügbarkeit von Anwendungen überwachen. Anwendungsmetriken werden auch im Monitoring der Anwendungsleistung (APM) verwendet.
Systemmetriken: Systemmetriken, auch Infrastrukturmetriken genannt, spiegeln den Zustand von Hardware und Betriebssystemen wider, einschließlich wichtiger Komponenten wie Kubernetes. Beispiele hierfür sind CPU-Auslastung, Festplatten-E/A, Netzwerkdurchsatz, Speichernutzung, Instanz-Uptime, Containerressourcennutzung und Serviceverfügbarkeit. Diese Metriken bieten Einblicke in die Leistung von Cloud-Ressourcen, virtuellen Maschinen, Containern und anderen zugrunde liegenden Komponenten.
Geschäftsmetriken: Geschäftsmetriken verknüpfen die technische und betriebliche Leistung mit den Geschäftsergebnissen. So helfen beispielsweise Metriken wie Konversionsraten, durchschnittlicher Transaktionswert und Nutzerbindung, die Systemleistung mit den Unternehmenszielen zu korrelieren.
Eine effektive Observability-Lösung gewährleistet Zuverlässigkeit, effektive Ressourcenzuweisung, Compliance und Sicherheit. Darüber hinaus hilft sie bei der Kapazitätsplanung, Leistungsoptimierung, Verbesserung der Nutzererfahrung und Kostenkontrolle. Kernmetriken ermöglichen eine effektive Beobachtbarkeit und letztlich eine datengestützte Entscheidungsfindung, die zu besseren Geschäftsergebnissen führt. Diese Metriken werden in der Regel aggregiert und in Dashboards visualisiert, damit sie in Echtzeit überwacht werden können.
Logs
Logs sind mit Zeitstempeln versehene Einträge bestimmter Ereignisse, die von Systemen, Anwendungen, Netzwerken und der Infrastruktur generiert werden. Sie liefern Details und Kontext zu Ereignissen, sodass Techniker die Ursache von Problemen nachvollziehen können.
Netzwerkgeräte, Anwendungen, Betriebssysteme, IoT-Geräte und Drittanbieteranwendungen geben verschiedene Arten von Logs aus, so unter anderem:
System-Logs: Dazu gehören Ereignisse wie Verbindungsversuche, Fehler und Konfigurationsänderungen.
Anwendungs-Logs: Sie zeichnen Softwareänderungen, CRUD-Operationen, Anwendungsauthentifizierung und andere Ereignisse auf, um Probleme zu diagnostizieren.
Netzwerk-Logs: Netzwerk-Logs zeichnen Daten von Ereignissen auf, die in einem Netzwerk oder auf einem Gerät stattfinden, einschließlich Netzwerkverkehr, Sicherheitsereignisse und Benutzeraktivitäten.
Logs werden in strukturierten und unstrukturierten Formaten aufgezeichnet, was eine Herausforderung für den Speicher darstellt. Zudem können sie schwer zu kategorisieren sein, da Log-Daten oft in verschiedenen Systemen isoliert und nicht automatisch korreliert sind.
Traces
Traces sind Telemetriesignale, die es Technikern ermöglichen, Anwendungen und Dienste aus der Perspektive einer Benutzersitzung zu betrachten. Verteiltes Tracing sammelt Traces von Anfragen, die ihren Weg durch eine verteilte Architektur nehmen.
Traces ermöglichen es Technikern, Anwendungen zu überwachen, zu debuggen und Engpässe zu erkennen. Anders ausgedrückt: Traces zeigen DevOps-Teams wo in ihren Umgebungen Probleme auftreten. Sie bilden die Grundlage für proaktives Monitoring. Durch die Analyse von Traces können Techniker herausfinden, welche Metriken oder Logs mit einem bestimmten Problem in Zusammenhang stehen, und so zukünftige Probleme minimieren.
Zu den Traces, die helfen, langsame Prozesse zu identifizieren, gehören zum Beispiel API-Abfragen, Front-End-API-Traffic, Server-zu-Server-Workloads und interne API-Aufrufe.
Metriken, Logs und Traces bieten Nutzern zwar wertvolle Anwendungs- und Systemleistungsdaten, diese Signale liefern jedoch nicht immer die Details, die für die Codefehlerbehebung und Leistungsoptimierung erforderlich sind. Hier kommen Profile ins Spiel.
Profile
Profiling ist das Sammeln und Analysieren von Profilen – Stack-Traces, die helfen, Probleme im Zusammenhang mit Datenstrukturen, Code-Sichtbarkeit und Speicherzuweisung auf Kernel- und Nutzerebene zu identifizieren.
Profiling hilft, Engpässe in Ihrem System auf Codeebene aufzudecken – ein weiterer wichtiger Vorteil moderner Beobachtbarkeit. OpenTelemetry verwendet ebenfalls Profiling als Signal. Infolgedessen entwickelt sich Profiling zur vierten und neuesten Säule der Beobachtbarkeit.
Wesentliche Beobachtbarkeitsmetriken: Die 4 goldenen Signale für SRE-Teams
Auch wenn die Monitoring-Bedürfnisse jedes Unternehmens einzigartig sind, so sind bestimmte Beobachtbarkeitsmetriken doch von allgemeiner Bedeutung. Diese Metriken werden innerhalb der Site Reliability Engineering (SRE)-Community manchmal als die vier goldenen Signale bezeichnet.
Latenz
Die Latenz misst die Zeit, die Daten benötigen, um von einem Punkt zum anderen zu gelangen. Die Latenz ist ein Hinweis auf zugrundeliegende Leistungsprobleme. Eine hohe Latenz kann die Nutzererfahrung beeinträchtigen, indem sie die Ladezeiten erhöht, Anwendungsfehler verursacht und die Erwartungen der Nutzer in Frage stellt.
Traffic
Traffic-Metriken verfolgen das Volumen der Anfragen oder Transaktionen, die eine Anwendung verarbeitet. Sie helfen Teams, das Nutzerverhalten zu verstehen und Skalierungsanforderungen vorherzusehen.
Fehler
Fehlermetriken bieten Einblick in fehlgeschlagene Anfragen oder Vorgänge. Durch das Monitoring von Fehlerraten und die Erkennung von Mustern können wiederkehrende Probleme behoben werden.
Sättigung
Sättigungsmetriken geben an, wie nah ein System an seinen Kapazitätsgrenzen ist. Durch das Monitoring der Ressourcennutzung wird sichergestellt, dass Techniker Engpässe proaktiv beheben können, bevor diese die Leistung beeinträchtigen.
Diese vier goldenen Signale sind der Schlüssel zu effektiven Beobachtbarkeitspraktiken, da sie Einblicke in den Zustand sowie die Leistung von IT-Systemen geben. Durch Monitoring, Korrelation und Analyse dieser Kennzahlen erhalten IT-Teams umsetzbare Einblicke, die ihnen eine proaktivere Haltung hinsichtlich des Monitorings der Site-Zuverlässigkeit und -Leistung ermöglichen.
Best Practices für die Implementierung von Beobachtbarkeitsmetriken
Die größte Herausforderung bei der Implementierung von Beobachtbarkeitsmetriken besteht im Aussortieren – viele Signale erzeugen eine Menge an Telemetriedaten, die möglicherweise nicht alle nützlich sind. Darüber hinaus stellt die Heterogenität der Daten oft ein Problem für SREs dar: Wie korreliert man verschiedene Arten unterschiedlichster Daten, um die Fehlerbehebung zu erleichtern?
Aus diesen Herausforderungen können wir einige Best Practices für die Implementierung von Beobachtbarkeitsmetriken ableiten.
Klare Ziele definieren: Die erfolgreiche Implementierung von Beobachtbarkeitsmetriken – und die Bekämpfung der Datenüberflutung – beginnt mit der Festlegung Ihrer Ziele. Um diese Ziele zu definieren, sollten Sie sich fragen, was Ihre Metriken Ihnen sagen sollen. Sie müssen nicht alles überwachen, nur das, was für Ihr Unternehmen und Ihre Systeme wichtig ist.
Offene Standards zur Instrumentierung von Anwendungen nutzen: Instrumentierung bezeichnet den Prozess der Generierung und Erfassung von Telemetriedaten aus Anwendungen. Um die Abhängigkeit von einem bestimmten Anbieter bei der Instrumentierung Ihrer Anwendungen zu vermeiden, sollten Sie ein anbieterneutrales Framework wie OpenTelemetry (OTel) in Betracht ziehen. OTel bietet ein standardisiertes Framework, mit dem Sie Telemetriedaten aus verschiedenen Quellen erfassen und vergleichen können.
Automatisierung nutzen: Automatisieren Sie die Datenerfassung und -analyse sowie das Alerting, um den manuellen Aufwand zu reduzieren und schnellere Reaktionszeiten zu ermöglichen.
Visualisierungen anpassen: Um Ihre definierten Ziele zu erreichen, passen Sie am besten Ihre Dashboards an. Standard-Dashboards sind nur bis zu einem gewissen Punkt nützlich – die Anpassung der Visualisierung Ihrer Umgebung ist der Schlüssel zu einer erfolgreichen Beobachtbarkeit.
Observability-Metriken mit Elastic
Elastic Observability bietet eine einheitliche Lösung für das Erfassen, Monitoring und Analysieren von Beobachtbarkeitsmetriken in Ihrem gesamten Technologie-Stack. Mit Elastic Observability können Sie Beobachtbarkeitsmetriken aus beliebigen Quellen erfassen, speichern und visualisieren, und mit unserer Search AI Platform die Problemlösung beschleunigen.
Elastic Observability verhindert Ausfälle und beschleunigt die Problemlösung durch suchbasierte Relevanz, kompromisslose Datenaufbewahrung, verbesserte Betriebseffizienz und Kosten sowie eine zukunftssichere Investition. Erhalten Sie schnelle, kontextbezogene und einheitliche Einblicke in die unterschiedlichsten Datenquellen mit einer offenen, OTel-orientierten Lösung, die sich nahtlos in Ihr sich entwickelndes Technologie-Ökosystem integriert.
Erfahren Sie mehr über Observability mit Elastic.
Tiefgehende Analyse von weiteren Ressourcen zu Beobachtbarkeitsmetriken
- Elastic Observability erkunden
- Metriken für APM mit Elastic ansehen
- Mehr über die wichtigsten Vorteile der Beobachtbarkeit erfahren
- Momentan beliebt: Die Akzeptanz von OpenTelemetry steigt – so bauen Sie eine Datengrundlage für Ihre Beobachtbarkeitsanforderungen auf
- Infrastrukturmetriken im Zeitverlauf erkunden
- Metriken analysieren
Die Entscheidung über die Veröffentlichung der in diesem Blogeintrag beschriebenen Leistungsmerkmale und Features sowie deren Zeitpunkt liegt allein bei Elastic. Es ist möglich, dass noch nicht verfügbare Leistungsmerkmale oder Features nicht rechtzeitig oder überhaupt nicht veröffentlicht werden.