In diesem Dokument wird beschrieben, warum wir empfehlen, Ihre Tracedaten mit der Telemetry (OTLP) API an Ihr Google Cloud Projekt zu senden. Diese API implementiert das OpenTelemetry OTLP-Protokoll. Außerdem finden Sie hier eine Anleitung zum Instrumentieren Ihrer Anwendungen und Informationen dazu, wo Sie Ihre Tracedaten ansehen können. Sie können die Telemetry API verwenden, wenn Sie Ihre Anwendungen mit einem der OpenTelemetry SDKs instrumentieren oder einen OpenTelemetry Collector verwenden.
Wir empfehlen die Telemetry API aus folgenden Gründen:
Die API ist mit dem Open-Source-OpenTelemetry-Ökosystem kompatibel und ihre Limits sind oft großzügiger als die der Cloud Trace API, die eine proprietäre Google Cloud API ist.
Ihre Tracedaten werden in einem Format gespeichert, das im Allgemeinen mit den Protobuf-Dateien übereinstimmt, die vom OpenTelemetry OTLP-Protokoll definiert werden. Einige Felder werden möglicherweise vor der Speicherung von einem OpenTelemetry-spezifischen Datentyp in einen JSON-Datentyp konvertiert. Weitere Informationen zum Speicherformat finden Sie unter Schema für Tracedaten.
Ihre Instrumentierung ist nicht von einem Google Cloudbestimmten Exporter abhängig.
Einige Funktionen wie Application Monitoring sind auf Informationen angewiesen, die nur verfügbar sind, wenn Sie Tracedaten an die Telemetry API senden.
OpenTelemetry ist ein Google Cloud-unterstütztes Open-Source-Projekt, für das Google Cloud Entwickler bereitstehen, um die Aufnahme und Visualisierung Ihrer Telemetriedaten zu unterstützen.
Google Cloud Observability prüft, ob die Cloud Trace API in Ihrem Google Cloud Projekt aktiviert ist , bevor Tracedaten gespeichert werden. Wenn Sie die Cloud Trace API deaktivieren, verwirft Google Cloud Observability Tracedaten, die Sie an die Telemetry API senden.
Best Practices
Wenn Sie Ihre Anwendungen instrumentieren, um Tracedaten an Ihr Google Cloud Projekt zu senden, empfehlen wir, einen Exporter zu verwenden, der OTLP-formatierte Daten in einen Collectorschreibt. Dieser sendet Ihre 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 den Export von Trace- oder Messwertdaten an die Telemetry API finden Sie in den folgenden Dokumenten:
- Übersicht über Collector-basierte Instrumentierungsbeispiele.
- Übersicht über die OTLP-Messwerterfassung.
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 auch 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.
Cloud Trace und Datenstandort
Wenn Sie Assured Workloads verwenden, weil Sie Anforderungen an den Datenstandort oder an das Impact Level 4 (IL4) haben, verwenden Sie die Telemetry API nicht, um Trace-Spans an Ihr Projekt zu senden.
Aufgenommene Daten ansehen
Sie können Ihre Tracedaten auf den Seiten Trace-Explorer und Observability Analytics ansehen. Weitere Informationen finden Sie unter: