Auf dieser Seite wird beschrieben, wie Sie clientseitige Traces mit OpenTelemetry aktivieren, wenn Sie die Cloud Storage-Clientbibliotheken für die Interaktion mit Cloud Storage verwenden. Sie können Tracedaten mit den folgenden unterstützten Cloud Storage-Clientbibliotheken erfassen und ansehen:
Übersicht
Wenn Sie Traces in den Cloud Storage-Clientbibliotheken aktivieren, können Sie die Leistung überwachen, Latenzprobleme identifizieren und Cloud Storage-Anfragen schnell debuggen. Mit Traces können Sie die Abfolge einer abgeschlossenen Anfrage sehen und erhalten so eine detaillierte Ansicht davon, wie die Anfrage von Cloud Storage empfangen, verarbeitet und beantwortet wurde. Ein einzelner Trace besteht aus mehreren Spans. Das sind detaillierte, mit Zeitstempeln versehene Aufzeichnungen jeder Funktion oder jedes Vorgangs, die Ihre Anwendung während der Cloud Storage-Anfrage ausgeführt hat.
Vorteile
Das Erfassen und Weitergeben von Trace-Daten bietet folgende Vorteile für Ihre Anwendung:
Bessere Leistungstransparenz: Da Tracedaten nahezu in Echtzeit generiert werden, wenn Cloud Storage jede Ihrer Anfragen bearbeitet, können Sie Leistungsprobleme schnell erkennen und Latenzprobleme ermitteln.
Fehlerbehandlung: Sie können genau feststellen, wo Probleme auftreten, und so die Ursachenanalyse beschleunigen und Ausfallzeiten reduzieren. Dazu nutzen Sie die Informationen zu jeder Cloud Storage-Anfrage, die in einem Trace enthalten sind.
Funktionsweise clientseitiger Traces
In den folgenden Abschnitten wird detailliert beschrieben, wie die Erfassung von Traces funktioniert.
So funktioniert die Erfassung von Traces mit OpenTelemetry
Die Cloud Storage-Clientbibliotheken unterstützen die Erfassung von Tracedaten mit dem OpenTelemetry SDK, um die folgenden Komponenten einzurichten, die zum Erfassen und Weitergeben von Tracedaten erforderlich sind:
Trace-Anbieter: Der Trace-Anbieter wird von den Cloud Storage-Clientbibliotheken verwendet und ist für die Erstellung und Verwaltung des Tracing-Systems verantwortlich, einschließlich der Generierung und Verwaltung von Traces und Spans in Ihrer Anwendung.
Trace-Exporter: Der Trace-Exporter wird vom OpenTelemetry SDK verwendet und ist dafür verantwortlich, Trace-Daten an eine Backend-Plattform für die Beobachtbarkeit wie Cloud Trace zu senden, wo Sie Trace-Daten analysieren und visualisieren können. Weitere Informationen zum Trace-Exporter finden Sie unter Funktionsweise von Trace-Exportern.
So funktionieren Trace-Exporte
Wenn Sie Traces mit dem OpenTelemetry SDK konfigurieren, müssen Sie ein Observability-Backend auswählen, in das Ihre Daten exportiert werden. Dort werden sie analysiert, gespeichert und visualisiert. Sie können Ihre Trace-Daten in ein beliebiges Observability-Backend Ihrer Wahl exportieren. Wir empfehlen jedoch die Verwendung von Cloud Trace, auf das über die Google Cloud Console zugegriffen werden kann und das in andere Google Cloud Dienste integriert ist.
Sobald der Trace-Provider und der Trace-Exporter konfiguriert und aktiviert sind, können Sie Trace-Daten nahezu in Echtzeit ansehen, da für jede Cloud Storage-Anfrage Traces und Spans generiert werden.
Mit dem Cloud Trace-Explorer in derGoogle Cloud -Konsole können Sie jeden Trace aufrufen, der Folgendes enthält:
Ein grober Überblick über eine Cloud Storage-Anfrage von Anfang bis Ende.
Mehrere Spannen, wobei jede Spanne einen einzelnen Vorgang mit Zeitstempel innerhalb der ausgeführten Cloud Storage-Anfrage erfasst.
Weitere Informationen zu Traces und Spans finden Sie in der OpenTelemetry-Dokumentation zu Traces und Spans.
Preise
Die Nutzung von Trace-Daten ist kostenpflichtig. Die Kosten basieren auf der Anzahl der Trace-Spans, die von Cloud Trace aufgenommen und gescannt werden. Weitere Informationen zu abrechenbaren Trace-Spans und Preisbeispielen finden Sie unter Cloud Trace-Kosten.
Hinweise
Bevor Sie Traces für Ihre Cloud Storage API-Nutzung erfassen können, müssen Sie die folgenden Schritte ausführen:
-
Enable the Cloud Trace API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. Aktivieren Sie die Cloud Storage API.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Cloud Trace Agent (roles/coudtrace.agent
) für das vom Client verwendete Projekt zuzuweisen, um die Berechtigung zu erhalten, die Sie zum Schreiben von Traces in Cloud Trace benötigen.
Diese vordefinierte Rolle enthält die Berechtigung cloudtrace.traces.patch
, die zum Schreiben von Traces in Cloud Trace erforderlich ist.
Sie können diese Berechtigungen auch mit vordefinierten Rollen erhalten oder benutzerdefinierte Rollen erstellen, um bestimmte Berechtigungen zu gewähren. Eine Anleitung zum Zuweisen von Rollen für Projekte finden Sie unter Rolle zuweisen oder widerrufen. Weitere Informationen zur Rolle des Cloud Trace-Agents finden Sie in der Dokumentation zur Identitäts- und Zugriffsverwaltung (IAM).
Tracing für Ihre Anwendung konfigurieren
Folgen Sie der Anleitung unten, um das Tracing zu konfigurieren und mit der Cloud Storage-Clientbibliothek Tracedaten zu erfassen:
C++
Installieren Sie die folgenden Versionen:
C++-Clientbibliothek Version 2.16.0 oder höher
C++-Version 14 oder höher
Wenn Sie die OpenTelemetry-Tracing-Instrumentierung in der C++-Clientbibliothek aktivieren möchten, aktualisieren Sie die Konfiguration Ihres Build-Systems für CMake oder Bazel.
Erstellen Sie eine Instanz des Cloud Storage-Clients mit aktivierten OpenTelemetry-Traces.
Java
Installieren Sie die folgenden Versionen der Cloud Storage-Java-Clientbibliothek:
Ab
com.google.cloud:google-cloud-storage:2.47.0
Ab
com.google.cloud:libraries-bom:26.53.0
Installieren Sie den Cloud Trace-Exporter für OpenTelemetry. Sie können auch einen beliebigen anderen Exporter verwenden.
Installieren Sie den Cloud Trace-Propagator.
Erstellen Sie eine Instanz des Cloud Storage-Clients mit aktivierten OpenTelemetry-Traces.
Python
Installieren Sie die Cloud Storage-Clientbibliothek für Python:
pip install google-cloud-storage[tracing]>=2.18.0
Installieren Sie den Cloud Trace-Exporter und -Propagator. Sie können auch einen beliebigen anderen Exporter verwenden.
pip install opentelemetry-exporter-gcp-trace opentelemetry-propagator-gcp
Installieren Sie die OpenTelemetry-Instrumentierung für Anfragen, um die zugrunde liegenden HTTP-Anfragen zu verfolgen.
pip install opentelemetry-instrumentation-requests
Legen Sie die Umgebungsvariable fest, um das Tracing für den Python-Speicherclient selektiv zu aktivieren:
export ENABLE_GCS_PYTHON_CLIENT_OTEL_TRACES=True
Konfigurieren Sie den Trace-Exporter und den Trace-Anbieter.
Traces ansehen
So rufen Sie Ihre Trace-Daten im Google Cloud Explorer auf:
-
Rufen Sie in der Google Cloud Console die Seite Trace Explorer auf:
Sie können diese Seite auch über die Suchleiste finden.
Klicken Sie auf der Seite Trace-Explorer im Streudiagramm auf einen bestimmten Trace, um die Trace-Details aufzurufen.
Im Bereich Trace-Details wird eine Tabelle mit Trace-Spans angezeigt.
Optional: Klicken Sie auf eine Spannenzeile, um detaillierte Informationen zu einer bestimmten Spanne aufzurufen, z. B.:
Attribute: Schlüssel/Wert-Paare, die zusätzliche Informationen zum Bereich enthalten.
Logs und Ereignisse: Logeinträge, die mit dem Zeitraum verknüpft sind.
Stacktraces: Stacktraces, die mit dem Bereich verknüpft sind.
Metadaten und Links: Links zu anderen Google Cloud Diensten, die mit dem Zeitraum verknüpft sind.
Weitere Informationen zur Verwendung von Cloud Trace-Explorer finden Sie unter Traces suchen und untersuchen.