Observability einfach gestalten: Telemetriedatenpipeline mit Open Telemetry
Mit dem OpenTelemetry-Framework erfassen Entwickler Telemetriedaten effizient aus verschiedenen Quellen und leiten die Daten gebündelt zur Analyse weiter.
- Jannik Bendfeld
- Carsten Röttgers
- Mit dem Open-Source-Framework OpenTelemetry lassen sich Metriken, Traces und Logs einfach erfassen und umfassende Telemetriedatenpipelines aufbauen.
- OpenTelemetry selbst bietet keine Backend- oder Analysefunktionen, aber Integrationspunkte für Observability-Plattformen wie Prometheus, Jaeger, Zipkin oder den Grafana-Stack.
- OpenTelemetry-Implementierungen stehen für eine Vielzahl an Sprachen und Plattformen zur Verfügung, darunter JavaScript/Node.js, .NET, Go, Python und Rust.
- Das Beispiel einer in .NET implementierten Lagerverwaltung zeigt die Funktionsweise, die Umsetzung und einen lokalen Test des OTel Collectors. Die Weiterleitung an Prometheus erfolgt im Beispiel über den Prometheus Exporter des OTel Collectors.
Als eine Sammlung herstellerneutraler Open-Source-Bausteine soll OpenTelemetry dem Observability-Ansatz zum Durchbruch verhelfen. Am Beispiel einer einfachen .NET-8-Anwendung zeigt dieser zweiteilige Artikel, wie einfach sich Metriken mit OpenTelemetry umsetzen lassen und wie sich mit dem OpenTelemetry Collector und Kubernetes (K8s) die Basis einer robusten Telemetriedatenpipeline aufbauen lässt. Das vollständig ausführbare Beispiel steht Interessierten in diesem GitHub-Repository zur Verfügung. Der erste Teil des Artikels beschreibt die Integration in das Beispielprojekt und einen ersten lokalen Test.
Offen, standardisiert und weitreichend unterstützt
Das Observability-Framework OpenTelemetry (OTel) umfasst standardisierte APIs, Protokolle, Bibliotheken, Agenten und Kollektorservices zum Erfassen von Telemetriedaten wie Logs, Metriken und Traces aus verteilten Apps und Services, um damit deren Performance und Verhalten zu überwachen, zu untersuchen und zu verstehen.
Das Open-Source-Projekt steht unter dem Dach der CNCF (Cloud Native Computing Foundation) und bietet im Kern Normierungen und Standardisierungen für die Instrumentierung von Apps und der notwendigen Infrastruktur. Es dient dem Sammeln und Übertragen der Telemetriedaten und dem Exportieren dieser Daten in ein Backend zur Analyse und Visualisierung. OTel selbst implementiert keine Backend- oder Analysefunktionen, besitzt aber verschiedene Integrationspunkte für Observability-Plattformen, um die gesammelten Daten aufzunehmen.
Das war die Leseprobe unseres heise-Plus-Artikels "Observability einfach gestalten: Telemetriedatenpipeline mit Open Telemetry". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.