OpenTelemetry: Erstes Beta-Release unterstützt Erlang, Go, Java, JavaScript und Python
Das Open-Source-Ökosystem für Telemetrie bringt im ersten offiziellen Beta-Release APIs und SDKs für zahlreiche Programmiersprachen.
![OpenTelemetry: Erstes Beta-Release unterstützt Erlang, Go, Java, JS und Python](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/2/8/7/1/2/6/7/shutterstock_763186900-4f3e82310ee9c0f7.jpeg)
(Bild: metamorworks/Shutterstock.com)
- Silke Hahn
OpenTelemetry ist ein quelloffenes Ökosystem zur automatisierten Verarbeitung von Telemetriedaten aus Apps. Das nun veröffentlichte erste Beta-Release bietet eine Reihe von APIs und SDKs für zahlreiche Programmiersprachen. Konkret gibt es nun Schnittstellen für Erlang, Go, Java, JavaScript und Python. Mit an Bord des ersten offiziellen Beta-Release sind ein Collector und ein Agent zur automatischen Instrumentierung von Java. Zum aktuellen Zeitpunkt ist das Release noch nicht für die Produktion geeignet, seine Komponenten sollen erst eine Testphase durchlaufen.
Die Communitys hinter den Open-Source-Projekten OpenCensus und OpenTracing haben sich 2019 zusammengeschlossen und betreiben seither mit vereinten Kräften OpenTelemetry. Das Projekt bietet ein einheitliches Set sprachspezifischer APIs, SDKs und weiterer Komponenten zur Sammlung und Verarbeitung verteilter Traces, Metriken und verwandter Metadaten aus jeglicher Art von Anwendungen. Entwickler sollen damit Observability-Daten aus ihren Anwendungen mit geringem Aufwand selbst aufzeichnen und auswerten können.
Export zu einem Backend eigener Wahl
Die Pakete des Beta-Release enthalten Interfaces und Implementierungstools zum Verwalten und Definieren von Metriken sowie zum "Sampeln" und Propagieren der erfassten Daten. Das Release umfasst APIs und SDKs zur Einbindung einiger der gängigsten Programmiersprachen wie Go, Java, JavaScript, Python und sogar Erlang. Für die Libraries von HTTP und gRPC gibt es sprachspezifische APIs. Jedes Paket ermöglicht die Einbindung mindestens eines gängigen HTTP-Frameworks und mindestens eines Storage-Clients zur automatisierten Verarbeitung relevanter empfangener Daten.
Entwickler können aus einer breiten Palette unterschiedlicher Backends auswählen, mit dem sie die erhobenen App-Daten weiterverarbeiten möchten: OpenTelemetry unterstützt den Export zu Prometheus, Jaeger, Zipkin, Azure Monitor, Dynatrace, Google Cloud Monitoring + Trace, Honeycomb, Lightstep, New Relic und Splunk. Das soll Entwicklern von Apps weitgehende Autonomie beim Auswerten ihrer Daten verschaffen, der Export soll automatisch auf die jeweils verwendete Programmiersprache abgestimmt sein.
Ein Collector fängt automatisiert Daten auf
Die Beta-Version von OpenTelemetry enthält einen Collector, der Daten aus den jeweils implementierten SDKs auffängt und an das ausgewählte Backend weiterleitet. Ein Auto-Instrumentierungstool für Java sammelt Telemetriedaten aus 47 Java-Frameworks und -Librarys – Anpassungen der auszuwertenden App sollen dafür nicht nötig sein.
Zu allen enthaltenen Features gibt es eine ausführliche Dokumentation im jeweiligen GitHub-Repository, die anvisierte Weiterentwicklung lässt sich dem Releaseplan entnehmen. Für die kommenden Wochen sind laut Release Notes weitere Änderungen geplant und die Komponenten sollen jetzt eine intensive Testphase durchlaufen. Einige Features werden laufend ergänzt. Hervorzuheben ist die geplante Einbindung von .NET.
Diese und alle weiteren Ankündigungen lassen sich den Release Notes entnehmen. Der Blogeintrag enthält auch Verweise zu sämtlichen aktuell verfügbaren GitHub-Repositorys mit Bezug zu diesem Beta-Release. (sih)