In diesem Dokument wird beschrieben, wie Sie benutzerdefinierte Clientmesswerte mit OpenTelemetry erfassen. Benutzerdefinierte Clientmesswerte sind über die Clientbibliotheken für Java und Go verfügbar.
Mit benutzerdefinierten clientseitigen Messwerten können Sie die Ursache von Latenz in Ihrem System ermitteln. Weitere Informationen finden Sie unter Latenzpunkte in einer Spanner-Anfrage.
Spanner-Clientbibliotheken stellen auch Statistiken und Traces mithilfe des OpenTelemetry-Frameworks für die Beobachtbarkeit bereit. Weitere Informationen finden Sie unter Trace-Erfassung mit OpenTelemetry einrichten.
OpenTelemetry ist ein Open-Source-Framework und ‑Toolkit für Observability, mit dem Sie Telemetriedaten wie Traces, Messwerte und Logs erstellen und verwalten können.
Hinweise
Sie müssen das OpenTelemetry SDK mit den entsprechenden Optionen zum Exportieren Ihrer Telemetriedaten konfigurieren. Wir empfehlen die Verwendung des OTLP-Exporters (OpenTelemetry Protocol).
Wenn Sie benutzerdefinierte clientseitige Messwerte mit OpenTelemetry einrichten möchten, müssen Sie das OpenTelemetry SDK und den OTLP-Exporter konfigurieren:
Fügen Sie Ihrer Anwendung mit dem folgenden Code die erforderlichen Abhängigkeiten hinzu:
Java
Go
Erstellen Sie ein OpenTelemetry-Objekt mit dem OTLP-Exporter und fügen Sie es mit
SpannerOptions
in Spanner ein:Java
Go
GFE-Latenz erfassen
Die GFE-Latenz (Google Front End) ist die Dauer in Millisekunden zwischen dem Zeitpunkt, an dem das Google-Netzwerk einen Remoteprozeduraufruf vom Client empfängt, und dem Zeitpunkt, an dem das GFE das erste Byte der Antwort empfängt.
Sie können die GFE-Latenz mit dem folgenden Code erfassen:
Java
Go
Im Beispielcode wird der String spanner/gfe_latency
an den Messwertnamen angehängt, wenn er in Cloud Monitoring exportiert wird. Sie können in Cloud Monitoring mit dem angehängten String nach diesem Messwert suchen.
Latenz der Cloud Spanner API-Anfrage erfassen
Die Latenz der Cloud Spanner API-Anfrage ist die Zeit in Sekunden zwischen dem ersten Byte der Clientanfrage, die das Cloud Spanner API-Frontend empfängt, und dem letzten Byte der Antwort, die das Cloud Spanner API-Frontend sendet.
Dieser Latenzmesswert ist als Teil von Cloud Monitoring-Messwerten verfügbar.
Umlauflatenz des Clients erfassen
Die Client-Umlauflatenz ist die Dauer in Millisekunden zwischen dem ersten Byte der Cloud Spanner API-Anfrage, die der Client an die Datenbank sendet (über das GFE und das Cloud Spanner API-Frontend), und dem letzten Byte der Antwort, die der Client von der Datenbank empfängt.
Der Messwert für die Roundtrip-Latenz des Spanner-Clients wird von OpenTelemetry nicht unterstützt. Stattdessen können Sie sich den clientseitigen Messwert für die Vorgangslatenz ansehen. Weitere Informationen finden Sie unter Beschreibungen clientseitiger Messwerte.
Sie können den Messwert auch mit OpenCensus und einer Bridge instrumentieren und die Daten zu OpenTelemetry migrieren.
Abfragelatenz erfassen
Die Abfragelatenz ist die Dauer in Millisekunden, die zum Ausführen von SQL-Abfragen in der Spanner-Datenbank benötigt wird.
Sie können die Abfragelatenz mit dem folgenden Code erfassen:
Java
Go
Im Beispielcode wird der String spanner/query_stats_elapsed
an den Messwertnamen angehängt, wenn er in Cloud Monitoring exportiert wird. Sie können in Cloud Monitoring mit dem angehängten String nach diesem Messwert suchen.
Messwerte im Metrics Explorer aufrufen
Rufen Sie in der Google Cloud Console die Seite „Metrics Explorer“ auf.
Wählen Sie Ihr Projekt aus.
Klicken Sie auf Messwert auswählen.
Suchen Sie mit den folgenden Strings nach Latenzmesswerten:
roundtrip_latency
: für den Messwert für die Client-Roundtrip-Latenz.spanner/gfe_latency
: für den GFE-Latenzmesswert.spanner/query_stats_elapsed
: für den Messwert für die Abfragelatenz.
Wählen Sie den Messwert aus und klicken Sie auf Übernehmen.
Weitere Informationen zum Gruppieren oder Aggregieren von Messwerten finden Sie unter Abfragen mit Menüs erstellen.
Nächste Schritte
- OpenTelemetry
- Informationen zum Konfigurieren des OpenTelemetry SDK
- Informationen zur Migration zu OpenTelemetry
- Informationen zum Diagnostizieren von Latenz mithilfe von Messwerten