Telemetry API (OTLP) – Übersicht

In diesem Dokument wird die Telemetry API (OTLP) beschrieben, die das OpenTelemetry Protocolimplementiert. 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 Ingenieure dafür sorgen, dass die Aufnahme und Visualisierung Ihrer Telemetriedaten unterstützt wird.

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

Informationen zu Kontingenten im Zusammenhang mit der API, finden Sie unter Limits der Telemetry API.

Best Practices

Wenn Sie Ihre Anwendungen instrumentieren, um Tracedaten an Ihr Google Cloud Projekt zu senden, empfehlen wir die Verwendung eines Exporters, 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 hängt automatisch /v1/traces, /v1/metrics oder /v1/logs an. Weitere Informationen finden Sie unter OTLP/HTTP-Anfrage.

Beispiele für den Export 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 mit einem In-Process-OTLP-Exporter verwenden, 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 Verwendung des direkten Exports 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:

  • Konfigurieren Sie ein Kontingentprojekt. Weitere Informationen finden Sie unter Kontingentprojekt festlegen.

  • Gewähren Sie dem Nutzer oder dem Dienstkonto, das von der Anwendung verwendet wird, die folgenden IAM-Rollen (Identity and Access Management):

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 Back-End-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.

Die Aufnahme von Tracedaten kann die Erstellung eines Observability-Buckets auslösen. 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.