Aufnehmen von OpenTelemetry-Daten mit Zerobus Ingest

Zerobus Ingest OTLP ist ein nativer OpenTelemetry Protocol (OTLP) -Endpunkt, der in den Zerobus Ingest-Dienst integriert ist. Sie können Ablaufverfolgungen, Protokolle und Metriken direkt in Unity-Katalog Delta-Tabellen übertragen, indem Sie standardmäßige OpenTelemetry-SDKs und -Sammler ohne benutzerdefinierte Bibliotheken verwenden zu müssen.

Informationen zum Konfigurieren Ihres OTLP-Clients zum Senden von Daten an Zerobus Ingest finden Sie unter Configure OpenTelemetry (OTLP)-Clients zum Senden von Daten an den Unity-Katalog.

Azure Databricks stellt die OTLP-Erfassung als Zerobus Ingest-Nutzung in Rechnung. Preisgestaltung und wie Sie Ihre Ausgaben überwachen können, finden Sie unter Kosten.

Konzepte

Die folgenden Konzepte sind nützlich, um zu verstehen, wie Zerobus Ingest OTLP funktioniert.

OTLP-Kompatibilität

Zerobus Ingest OTLP implementiert die Standard-OTLP-Collector-Dienste, wie sie durch die OpenTelemetrie-Spezifikation definiert sind, sowohl über gRPC als auch über HTTP (Protobuf). Jeder OTLP-kompatible Exporter, wie ein OpenTelemetry SDK, der OpenTelemetry Collector oder eine andere Instrumentierungsbibliothek, kann Daten an diesen Endpunkt senden.

Unterstützte Signale

Zerobus Ingest OTLP stellt pro Telemetriesignaltyp einen Dienst frei. Jedes Signal ist sowohl über OTLP/gRPC als auch OTLP/HTTP (Protobuf) verfügbar:

Signal gRPC-Dienstpfad HTTP-Pfad
Ablaufverfolgungen: Verteilte Ablaufverfolgung umfasst vollständige Unterstützung für Ereignisse, Links und Status. /opentelemetry.proto.collector.trace.v1.TraceService/Export /v1/traces
Protokolle: Protokolldatensätze mit Schweregrad, Inhalt und Korrelation mit Ablaufverfolgungen über trace_id und span_id. /opentelemetry.proto.collector.logs.v1.LogsService/Export /v1/logs
Metriken: Alle fünf OTLP-Metriktypen: Gauge, Sum, Histogramm, ExponentialHistogram und Zusammenfassung. /opentelemetry.proto.collector.metrics.v1.MetricsService/Export /v1/metrics

Teilerfolg

Zerobus Ingest OTLP unterstützt teilweisen Erfolg gemäß der OTLP-Spezifikation. Wenn eine Anforderung eine Mischung aus gültigen und ungültigen Datensätzen enthält, werden die gültigen Datensätze aufgenommen, und die ungültigen Datensätze werden abgelehnt. Die Antwort enthält die Anzahl der abgelehnten Datensätze (rejected_spans, rejected_log_recordsoder rejected_data_points) und eine error_message Beschreibung, warum.

Compression

Gzip-Kompression wird auf allen drei OTLP-Diensten sowohl über gRPC als auch über HTTP unterstützt. Für gRPC setze den grpc-encoding Header auf gzip. Für HTTP setze den Header Content-Encoding auf gzip. Alternativ kannst du deinen OTLP-Exporter so konfigurieren, dass er gzip-Kompression verwendet.

Einschränkungen

  • Es wird nur die Protobuf-Codierung von OTLP/HTTP unterstützt. OTLP/HTTP mit einem JSON-Textkörper wird nicht unterstützt und Anfragen mit einem Content-Type von application/json werden abgelehnt.
  • Jede Anforderung zielt auf eine Tabelle ab, die mit der x-databricks-zerobus-table-name Kopfzeile angegeben wird. Um Traces, Protokolle und Metriken aufzunehmen, konfigurieren Sie separate Exporter, die auf verschiedene Tabellen verweisen.
  • Tabellen müssen im Voraus mit dem richtigen Schema erstellt werden. Zerobus Ingest erstellt oder ändert keine Tabellen.
  • Das Standardkontingent beträgt 10.000 Anforderungen pro Sekunde. Wenn Sie ein höheres Kontingent benötigen, wenden Sie sich an Ihren Databricks-Vertreter.
  • Einige OTLP-Zahlenfelder können an Präzision verlieren oder überlaufen, wenn sie auf Delta-Typen abgebildet werden. Siehe Numerische Genauigkeit und Vorzeichentypen.
  • Für die vollständige Liste der Zerobus Ingest-Quoten siehe Zerobus Ingest-Quoten.

Weitere Ressourcen