Telemetry API (OTLP) – Übersicht

In diesem Dokument wird die Telemetry API (OTLP) beschrieben, die das OpenTelemetry Line Protocol implementiert. Diese API ist für die Verwendung mit Anwendungen konzipiert, die mit einem der der OpenTelemetry SDKs instrumentiert sind oder einen OpenTelemetry Collector verwenden.

OpenTelemetry ist ein Google Cloud-unterstütztes Open-Source-Projekt, bei dem Google Cloud Techniker dafür sorgen, dass die Aufnahme und Visualisierung Ihrer Telemetriedaten unterstützt wird.

Weitere Informationen zu dieser API finden Sie in den folgenden Referenzdokumenten:

Best Practices

Wenn Sie Ihre Anwendungen instrumentieren, um Tracedaten an Ihr Google Cloud Projekt zu senden, empfehlen wir Ihnen, einen Exporter zu verwenden, der Daten im OTLP-Format in einen Collectorschreibt. Dieser sendet die Tracedaten dann an die Telemetry API. Geben Sie in Ihrem Collector nur die Stamm-URL an:

exporters:
  otlphttp:
    encoding: proto
    endpoint: https://telemetry.googleapis.com

OpenTelemetry erkennt den Datentyp und fügt automatisch /v1/traces, /v1/metrics oder /v1/logs an. Weitere Informationen finden Sie unter OTLP/HTTP-Anfrage.

Beispiele für das Exportieren von Trace- oder Messwertdaten in die Telemetry API finden Sie in den folgenden Dokumenten:

Wenn Sie keinen Collector verwenden können, können Sie eine OpenTelemetry-Bibliothek verwenden, die einen In-Process-OTLP-Exporter enthält, um Telemetriedaten an die Telemetry API zu senden. Informationen zum direkten Exportieren von Tracedaten finden Sie unter Cloud Trace-Exporter zum OTLP-Endpunkt.

Authentifizierung

Sie müssen Ihre Exporter mit den Anmeldedaten konfigurieren, die zum Senden von Daten an Ihr Google Cloud Projekt erforderlich sind. Wenn Sie beispielsweise Collector verwenden, verwenden Sie in der Regel die Erweiterung googleclientauth, um sich mit Google-Anmeldedaten zu authentifizieren.

Ein Beispiel für die Authentifizierung bei der direkten Exportierung von Tracedaten finden Sie unter Authentifizierung konfigurieren. In diesem Beispiel wird veranschaulicht, wie Sie den Exporter mit Ihren Google Cloud Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) konfigurieren und Ihrer Anwendung eine sprachspezifische Google Auth-Bibliothek hinzufügen.

Wenn Sie Telemetriedaten mit der Telemetry API an Ihr Google Cloud Projekt senden möchten, müssen Sie außerdem Folgendes tun:

Unterstützung durch VPC Service Controls

Der Telemetry API-Dienst mit dem Dienstnamen telemetry.googleapis.com ist ein von VPC Service Controls unterstützter Dienst. Alle VPC Service Controls-Einschränkungen, die Sie für den Telemetry API-Dienst erstellen, gelten nur für diesen Dienst. Diese Einschränkungen gelten nicht für andere Dienste, einschließlich Dienste wie cloudtrace.googleapis.com, die auch Tracedaten aufnehmen können.

Weitere Informationen finden Sie unter:

Dienstendpunkte

Ein Dienstendpunkt ist eine Basis-URL, die die Netzwerkadresse eines API-Dienstes angibt. Die Telemetry API unterstützt einen globalen Endpunkt und regionale Endpunkte:

  • Globaler Endpunkt: telemetry.googleapis.com. Nachdem Google Cloud Observability alle Validierungsschritte erfolgreich abgeschlossen hat, werden die Daten für diesen Endpunkt zur Speicherung an einen Backend-Dienst gesendet.

  • Regionale Endpunkte: telemetry.REGION.rep.googleapis.com, wobei REGION eine unterstützte Region ist. Nachdem Google Cloud Observability alle Validierungsschritte erfolgreich abgeschlossen hat, werden die Daten für diese Endpunkte an einen Back-End-Dienst gesendet. Dieser Dienst speichert oder verwirft die Daten:

    • Log- und Tracedaten werden gespeichert. Der Backend-Dienst verschiebt Daten bei Bedarf automatisch zwischen Regionen.
    • Messwertdaten werden nur gespeichert, wenn das mit den Daten verknüpfte Standortlabel mit der Region des Endpunkts oder einer Zone in dieser Region übereinstimmt.

    Eine Liste der unterstützten regionalen Endpunkte finden Sie auf den API-Referenzseiten.

Durch die Aufnahme von Tracedaten kann die Erstellung eines Observability-Buckets ausgelöst werden. Die Verwendung eines regionalen Endpunkts hat jedoch keine Auswirkungen darauf, wo das System den Observability-Bucket erstellt. Das System bestimmt den Standort eines Observability-Buckets anhand von Standardeinstellungen, Organisationsrichtlinien und den unterstützten Bucket-Standorten.