Facebook Pixel
Searching...
Deutsch
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Observability Engineering

Observability Engineering

Achieving Production Excellence
von Charity Majors 2022 318 Seiten
3.77
100+ Bewertungen
Hören
Listen to Summary

Wichtige Erkenntnisse

1. Observability revolutioniert das Verständnis von Softwaresystemen

Observability ist ein Maß dafür, wie gut Sie jeden Zustand Ihres Systems verstehen und erklären können, egal wie neu oder bizarr er ist.

Paradigmenwechsel. Observability passt Konzepte der Regelungstechnik an moderne Softwaresysteme an und ermöglicht es Ingenieuren, interne Zustände durch externe Ausgaben zu verstehen. Im Gegensatz zu herkömmlichem Monitoring, das auf vordefinierten Metriken und Schwellenwerten basiert, erlaubt Observability ad-hoc Abfragen und die Erkundung des Systemverhaltens.

Bewältigung von Komplexität. Da Systeme zunehmend verteilt und dynamisch werden, werden die Grenzen des traditionellen Monitorings offensichtlich. Observability glänzt in Umgebungen, in denen:

  • Microservices-Architekturen komplexe Abhängigkeiten schaffen
  • Cloud-native Bereitstellungen flüchtige Ressourcen einführen
  • Praktiken der kontinuierlichen Bereitstellung zu häufigen Änderungen führen

Kulturelle Auswirkungen. Die Einführung von Observability-Praktiken verändert die Herangehensweise von Teams an Produktionssysteme:

  • Ermutigt zu proaktiver Erkundung statt reaktivem Löschen von Bränden
  • Demokratisiert das Systemverständnis unter den Teammitgliedern
  • Bricht Silos zwischen Entwicklung und Betrieb auf

2. Ereignisse, nicht Metriken, sind die Bausteine der Observability

Wenn Sie unsere Definition von Observability akzeptieren – dass es um die unbekannten Unbekannten geht, dass es bedeutet, jede Frage stellen und jeden inneren Systemzustand verstehen zu können, ohne ihn im Voraus zu antizipieren oder vorherzusagen –, gibt es eine Reihe technischer Voraussetzungen, die Sie erfüllen müssen, um diese Definition zu erfüllen.

Reicher Kontext. Ereignisse erfassen den vollständigen Kontext einer Systeminteraktion, einschließlich:

  • Anforderungsparameter
  • Systemzustand
  • Leistungsmetriken
  • Benutzerkennungen
  • Geschäftsspezifische Datenpunkte

Flexibilität. Im Gegensatz zu voraggregierten Metriken ermöglichen Ereignisse:

  • Beliebiges Aufteilen und Analysieren von Daten
  • Abfragen mit hoher Kardinalität und hoher Dimensionalität
  • Entdeckung bisher unbekannter Muster und Korrelationen

Implementierung. Strukturierte Ereignisse sollten:

  • Für jede bedeutende Systeminteraktion ausgegeben werden
  • Breit angelegt sein, mit vielen Feldern
  • Sowohl technischen als auch geschäftlichen Kontext erfassen können

3. Traces bieten entscheidenden Kontext, indem sie Ereignisse verknüpfen

In einem beobachtbaren System sind Traces einfach eine zusammenhängende Serie von Ereignissen.

End-to-End-Sichtbarkeit. Traces verbinden Ereignisse über verteilte Systeme hinweg und offenbaren:

  • Dienstabhängigkeiten
  • Leistungsengpässe
  • Fehlerausbreitung

Schlüsselkomponenten:

  • Trace-ID: Eindeutiger Bezeichner für den gesamten Anforderungsfluss
  • Span-ID: Bezeichner für jeden Schritt im Trace
  • Parent-ID: Stellt die hierarchische Beziehung zwischen Spans her
  • Zeitstempel und Dauer: Erfassen zeitliche Informationen

Über traditionelle Anwendungsfälle hinaus. Tracing-Konzepte können angewendet werden auf:

  • Nicht-verteilte Systeme zur Leistungsanalyse
  • Batch-Jobs, um Verarbeitungsschritte zu verstehen
  • Lambda-Funktionen, um serverlose Workflows zu verfolgen

4. Observability ermöglicht Debugging von Grundprinzipien aus

Ein Grundprinzip ist eine grundlegende Annahme über ein System, die nicht aus einer anderen Annahme abgeleitet wurde.

Wissenschaftlicher Ansatz. Observability-Tools unterstützen einen methodischen Debugging-Prozess:

  1. Beginnen Sie mit einer Gesamtansicht des Systems
  2. Überprüfen Sie das beobachtete Verhalten gegen die Erwartungen
  3. Erkunden Sie systematisch Dimensionen, um Muster zu identifizieren
  4. Filtern und vertiefen Sie sich, um Probleme zu isolieren
  5. Wiederholen Sie den Vorgang, bis die Ursache gefunden ist

Automatisierung. Fortgeschrittene Observability-Tools können:

  • Anomales Verhalten mit Baselines vergleichen
  • Signifikante Unterschiede in Ereignisattributen hervorheben
  • Potenzielle Untersuchungsbereiche vorschlagen

Kultureller Wandel. Debugging von Grundprinzipien aus:

  • Reduziert die Abhängigkeit von Stammeswissen
  • Befähigt weniger erfahrene Teammitglieder
  • Fördert Neugier und Erkundung

5. SLOs und Fehlerbudgets schaffen umsetzbare Alarme

Fehlerbudget-Verbrauchsalarme sollen frühzeitig vor zukünftigen SLO-Verletzungen warnen, die auftreten würden, wenn die aktuelle Verbrauchsrate anhält.

Definition von Zuverlässigkeit. Service Level Objectives (SLOs) bieten:

  • Klare Ziele für die Systemzuverlässigkeit
  • Eine gemeinsame Sprache zwischen technischen und geschäftlichen Stakeholdern
  • Ein Rahmenwerk für Abwägungen zwischen Zuverlässigkeit und Feature-Entwicklung

Fehlerbudgets. Durch die Quantifizierung akzeptabler Unzuverlässigkeitsniveaus schaffen Fehlerbudgets:

  • Eine endliche Ressource, die verwaltet werden muss
  • Anreize für proaktive Zuverlässigkeitsverbesserungen
  • Ein objektives Maß dafür, wann Stabilität Vorrang vor neuen Features haben sollte

Umsetzbare Alarmierung. SLO-basierte Alarme:

  • Konzentrieren sich auf kundenrelevante Probleme
  • Reduzieren Alarmmüdigkeit, indem sie Lärm eliminieren
  • Bieten Kontext für Priorisierung und Entscheidungsfindung

6. Sampling-Strategien optimieren Ressourcennutzung bei gleichzeitiger Wahrung der Genauigkeit

In großem Maßstab wird die Notwendigkeit, Ihren Datensatz zu verfeinern, um die Ressourcenkosten zu optimieren, entscheidend. Aber auch in kleinerem Maßstab, wo die Notwendigkeit, Ressourcen zu sparen, weniger dringend ist, kann die Verfeinerung der Daten, die Sie behalten, wertvolle Kosteneinsparungen bieten.

Balanceakt. Sampling-Strategien zielen darauf ab:

  • Datenvolumen und damit verbundene Kosten zu reduzieren
  • Statistische Genauigkeit für Analysen zu bewahren
  • Wichtige Ereignisse und Ausreißer zu erhalten

Schlüsseltechniken:

  • Konstant-Wahrscheinlichkeits-Sampling: Einfach, kann aber seltene Ereignisse verpassen
  • Dynamisches Raten-Sampling: Passt sich dem Verkehrsaufkommen an
  • Inhaltsbasiertes Sampling: Priorisiert Ereignisse basierend auf Attributen
  • Head-basiertes vs. Tail-basiertes Sampling: Berücksichtigt, wann Sampling-Entscheidungen getroffen werden

Implementierungsüberlegungen:

  • Konsistentes Sampling über Dienste hinweg
  • Weitergabe von Sampling-Entscheidungen in verteilten Traces
  • Fähigkeit, die ursprüngliche Datenverteilung zu rekonstruieren

7. Observability ist ein geschäftliches Muss im Zeitalter verteilter Systeme

Der geschäftliche Nutzen der Einführung von Observability in Ihre Systeme besteht darin, sowohl die Zeit zur Erkennung (TTD) als auch die Zeit zur Lösung (TTR) von Problemen in Ihren Diensten zu verkürzen.

Konkrete Vorteile:

  • Schnellere Vorfalllösung
  • Verbesserte Kundenzufriedenheit
  • Reduzierte Burnout-Rate bei Ingenieuren
  • Erhöhte Feature-Velocity

Kulturelle Transformation. Observability-Praktiken:

  • Befähigen Ingenieure, ihre Systeme zu verstehen und zu besitzen
  • Brechen Silos zwischen Entwicklung, Betrieb und Geschäftsteams auf
  • Fördern eine Kultur der kontinuierlichen Verbesserung und des Lernens

Implementierungsstrategie:

  1. Beginnen Sie mit Diensten, die hohe Auswirkungen und Schmerzpunkte haben
  2. Demonstrieren Sie den Wert durch schnelle Erfolge
  3. Investieren Sie in Tools und Schulungen
  4. Etablieren Sie klare Metriken zur Verbesserung (z.B. TTD, TTR)
  5. Erweitern Sie schrittweise auf die gesamte Organisation

Zuletzt aktualisiert:

FAQ

What's "Observability Engineering: Achieving Production Excellence" about?

  • Focus on Observability: The book is centered around the concept of observability in modern software systems, explaining its importance and how it differs from traditional monitoring.
  • Authors' Expertise: Written by Charity Majors, Liz Fong-Jones, and George Miranda, the book draws on their extensive experience in software engineering and observability practices.
  • Comprehensive Guide: It provides a detailed analysis of what observability means, how to implement it, and its impact on team dynamics and organizational culture.
  • Practical Insights: The book offers practical advice on building a culture of observability and addresses challenges associated with scaling observability practices.

Why should I read "Observability Engineering: Achieving Production Excellence"?

  • Modern Relevance: As software systems become more complex, understanding observability is crucial for maintaining and improving system performance.
  • Expert Guidance: The authors are leaders in the field, offering insights that are both practical and based on real-world experience.
  • Cultural Shift: The book emphasizes the cultural changes necessary for successful observability adoption, making it relevant for both technical and managerial roles.
  • Actionable Advice: It provides actionable steps and strategies for implementing observability in your organization, making it a valuable resource for engineers and managers alike.

What are the key takeaways of "Observability Engineering: Achieving Production Excellence"?

  • Observability vs. Monitoring: Observability is about understanding system behavior in real-time, while monitoring is about tracking known issues.
  • Structured Events: The book highlights the importance of structured events as the building blocks of observability.
  • Cultural Importance: Successful observability requires a cultural shift within organizations, emphasizing collaboration and continuous improvement.
  • Scalability and Efficiency: The book discusses strategies for scaling observability practices and making them efficient, even in large, complex systems.

What are the best quotes from "Observability Engineering: Achieving Production Excellence" and what do they mean?

  • "Observability is not about the data types or inputs, nor is it about mathematical equations. It is about how people interact with and try to understand their complex systems." This quote emphasizes the human aspect of observability, focusing on interaction and understanding rather than just technical metrics.
  • "Observability is the solution to that gap." This highlights observability as a critical tool for bridging the gap between theoretical system design and practical, real-world operation.
  • "Observability allows you to understand and explain any state your system can get into, no matter how novel or bizarre." This underscores the comprehensive nature of observability, enabling engineers to diagnose and resolve unexpected issues.

How does "Observability Engineering" define observability?

  • Mathematical Origins: The book traces the term "observability" back to its mathematical roots, where it describes the ability to infer internal states from external outputs.
  • Software Adaptation: In software, observability is adapted to mean understanding the internal state of a system based on its outputs, without needing to predict issues in advance.
  • Key Characteristics: Observability involves structured events, high cardinality, and the ability to ask arbitrary questions about system behavior.
  • Practical Application: It is about enabling engineers to debug systems in real-time, focusing on unknown unknowns rather than just known issues.

What is the difference between observability and monitoring according to "Observability Engineering"?

  • Scope of Understanding: Observability is about understanding the system's internal state, while monitoring focuses on tracking known issues and metrics.
  • Proactive vs. Reactive: Observability allows for proactive problem-solving by enabling real-time insights, whereas monitoring is often reactive, alerting to predefined conditions.
  • Data Granularity: Observability relies on high-cardinality data and structured events, providing a more detailed view than the aggregated metrics used in monitoring.
  • Cultural Shift: Implementing observability requires a cultural change within organizations, promoting collaboration and continuous improvement.

How does "Observability Engineering" suggest implementing observability in an organization?

  • Start with Pain Points: The book advises starting with the most problematic areas to quickly demonstrate the value of observability.
  • Iterative Instrumentation: It recommends iteratively building out instrumentation, using each debugging situation as an opportunity to enhance observability.
  • Community Engagement: Joining community groups can provide valuable insights and support from others facing similar challenges.
  • Buy vs. Build: The authors suggest buying observability tools rather than building them in-house to quickly realize benefits and focus on solving problems.

What role do structured events play in "Observability Engineering"?

  • Building Blocks: Structured events are the fundamental building blocks of observability, capturing detailed information about system behavior.
  • Data Granularity: They provide the necessary granularity to understand and debug complex systems, allowing for high-cardinality queries.
  • Event Scope: Each event records everything that happens during a request, enabling engineers to reconstruct and analyze system states.
  • Flexibility: Structured events allow for arbitrary slicing and dicing of data, facilitating deep insights into system performance.

How does "Observability Engineering" address the challenges of scaling observability?

  • Sampling Strategies: The book discusses various sampling strategies to manage data volume and resource constraints while maintaining data fidelity.
  • Efficient Data Handling: It emphasizes the importance of efficient data storage and analysis to handle large-scale observability data.
  • Cultural Considerations: Scaling observability also involves cultural changes, ensuring that teams are equipped and motivated to use observability tools effectively.
  • Iterative Improvement: The authors advocate for continuous improvement and adaptation of observability practices as systems and organizational needs evolve.

What is the Observability Maturity Model in "Observability Engineering"?

  • Framework for Evaluation: The Observability Maturity Model provides a framework for evaluating an organization's observability capabilities and progress.
  • Key Capabilities: It identifies key capabilities such as resilience, code quality, complexity management, release cadence, and user behavior understanding.
  • Continuous Improvement: The model emphasizes continuous improvement and adaptation, recognizing that observability practices are never "done."
  • Outcome-Oriented Goals: It encourages organizations to set outcome-oriented goals and prioritize capabilities that align with their business objectives.

How does "Observability Engineering" relate to DevOps and SRE practices?

  • Complementary Practices: Observability is closely related to DevOps and SRE practices, enhancing their effectiveness by providing deeper insights into system behavior.
  • Feedback Loops: It supports shorter feedback loops and continuous improvement, key principles of both DevOps and SRE.
  • Cultural Alignment: Observability aligns with the cultural shifts promoted by DevOps and SRE, emphasizing collaboration, ownership, and proactive problem-solving.
  • Enhanced Reliability: By integrating observability, organizations can achieve higher reliability and performance, core goals of DevOps and SRE practices.

What are the practical benefits of adopting observability according to "Observability Engineering"?

  • Faster Issue Resolution: Observability enables faster detection and resolution of issues, reducing downtime and improving system reliability.
  • Improved Customer Satisfaction: By understanding and addressing user experience issues, organizations can enhance customer satisfaction and retention.
  • Increased Innovation Capacity: With less time spent on firefighting, teams can focus more on delivering new features and innovations.
  • Cultural Transformation: Observability fosters a culture of continuous improvement, collaboration, and proactive problem-solving, leading to more resilient and adaptable organizations.

Rezensionen

3.77 von 5
Durchschnitt von 100+ Bewertungen von Goodreads und Amazon.

Observability Engineering erhält gemischte Bewertungen, mit einer durchschnittlichen Bewertung von 3,78 von 5. Leser schätzen die Einführung des Buches in die Konzepte der Beobachtbarkeit und seine Betonung auf sozio-technische Systeme. Viele finden es jedoch repetitiv, es fehlen praktische Beispiele, und es konzentriert sich zu sehr darauf, Beobachtbarkeit von Überwachung zu unterscheiden. Einige loben seine revolutionären Ideen, während andere die Länge und den Mangel an technischer Tiefe kritisieren. Das Buch wird als guter Ausgangspunkt für das Verständnis von Beobachtbarkeit angesehen, bietet jedoch nicht genügend detaillierte Implementierungsanleitungen für Ingenieure.

Über den Autor

Charity Majors ist eine herausragende Persönlichkeit im Bereich der Observability und Softwaretechnik. Sie ist bekannt für ihre Expertise in verteilten Systemen, Produktionstechnik und DevOps-Praktiken. Majors ist Mitbegründerin und CTO von Honeycomb, einem Unternehmen, das sich auf Observability-Tools spezialisiert hat. Sie spricht häufig auf Konferenzen und schreibt über Observability, Microservices und moderne Softwareentwicklungsmethoden. Majors hat eine starke Präsenz in den sozialen Medien, insbesondere auf Twitter, wo sie Einblicke teilt und sich an Diskussionen über Technologie und Ingenieurskultur beteiligt. Ihre Arbeit konzentriert sich darauf, die Zuverlässigkeit und Leistung komplexer Softwaresysteme durch Observability zu verbessern.

0:00
-0:00
1x
Dan
Andrew
Michelle
Lauren
Select Speed
1.0×
+
200 words per minute
Home
Library
Get App
Create a free account to unlock:
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Recommendations: Get personalized suggestions
Ratings: Rate books & see your ratings
Try Full Access for 7 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
All summaries are free to read in 40 languages
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 10
📜 Unlimited History
Free users are limited to 10
Risk-Free Timeline
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Apr 9,
cancel anytime before.
Consume 2.8x More Books
2.8x more books Listening Reading
Our users love us
100,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.
Scanner
Find a barcode to scan

Settings
General
Widget
Appearance
Loading...
Black Friday Sale 🎉
$20 off Lifetime Access
$79.99 $59.99
Upgrade Now →