In diesem Dokument wird beschrieben, wie Sie benutzerdefinierte Clientmesswerte mit OpenTelemetry erfassen. Benutzerdefinierte Clientmesswerte sind mit den Clientbibliotheken Java und Go verfügbar.
Mit benutzerdefinierten clientseitigen Messwerten können Sie die Ursache für die Latenz in Ihrem System ermitteln. Weitere Informationen finden Sie unter Latenzausschläge in einer Spanner-Anfrage.
Spanner-Clientbibliotheken stellen auch Statistiken und Traces mithilfe des OpenTelemetry-Observability-Frameworks bereit. Weitere Informationen finden Sie unter Erfassung von Traces mit OpenTelemetry einrichten.
OpenTelemetry ist ein Open-Source-Observability-Framework und -Toolkit, mit dem Sie Telemetriedaten wie Traces, Messwerte und Protokolle erstellen und verwalten können.
Hinweise
Sie müssen das OpenTelemetry SDK mit geeigneten Optionen für den Export Ihrer Telemetriedaten konfigurieren. Wir empfehlen die Verwendung des OpenTelemetry Protocol (OTLP)-Exporteurs.
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 die erforderlichen Abhängigkeiten mit dem folgenden Code hinzu:
Java
Go
Erstellen Sie ein OpenTelemetry-Objekt mit dem OTLP-Exporteur und fügen Sie es mit
SpannerOptions
in Spanner ein:Java
Go
GFE-Latenz erfassen
Die Latenz des Google Front End (GFE) 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 Codebeispiel wird dem Messwertnamen beim Exportieren in Cloud Monitoring der String spanner/gfe_latency
angehängt. 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, das das Cloud Spanner API-Frontend empfängt, und dem letzten Byte der Antwort, das das Cloud Spanner API-Frontend sendet.
Dieser Latenzmesswert ist als Teil der Cloud Monitoring-Messwerte 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 (sowohl über das GFE als auch über das Cloud Spanner API-Frontend), und dem letzten Byte der Antwort, das der Client von der Datenbank empfängt.
Der Messwert „Spanner-Client-Relaislatenz“ wird von OpenTelemetry nicht unterstützt. Sie können stattdessen den clientseitigen Messwert „Operation Latency“ (Vorgang Latenz) aufrufen. Weitere Informationen finden Sie unter Beschreibungen clientseitiger Messwerte.
Sie können den Messwert auch mit OpenCensus über eine Brücke 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 Codebeispiel wird dem Messwertnamen beim Exportieren in Cloud Monitoring der String spanner/query_stats_elapsed
angehängt. 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 -Konsole die Seite „Metrics Explorer“ auf.
Wählen Sie Ihr Projekt aus.
Klicken Sie auf Messwert auswählen.
Verwenden Sie die folgenden Strings, um nach einem Latenzmesswert zu suchen:
roundtrip_latency
: für den Messwert „Client-Roundtrip-Latenz“.spanner/gfe_latency
: für den GFE-Latenzmesswert.spanner/query_stats_elapsed
: für den Messwert „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