Observability
Nachdem sich die Welt noch nicht einig ist, wie sie “Observability” definieren soll, hier die Definition für dieses Dokument:
Definition: Observability ist ein Maß, wie gut man den inneren Zustand einer Applikation anhand seiner Ausgaben erkennen kann.
Wir denken dabei an Sachen wie:
- Gibt es Fehler bei der Verarbeitung?
- Wie viel Speicher benötigt die Applikation?
- Wie lange dauern die Requests?
- Wie war der Programmverlauf dieser fehlerhaften Anfrage?
Um solche Fragen zu beantworten, hat der Betrieb eine Reihe von Werkzeugen bereitgestellt. Die reichen von zentralem Logging (z.B. ELK-Stack) über die Sammlung von Metriken (z.B. Prometheus) und Performance Monitoring (z.B. Dynatrace) bis zu Tracing Werkzeugen (z.B. Jaeger).