Ce document explique comment capturer des métriques client personnalisées à l'aide d'OpenTelemetry. Les métriques client personnalisées sont disponibles à l'aide des bibliothèques clientes Java et Go.
Les métriques côté client personnalisées peuvent vous aider à identifier la source de latence dans votre système. Pour en savoir plus, consultez la section Points de latence dans une requête Spanner.
Les bibliothèques clientes Spanner fournissent également des statistiques et des traces à l'aide du framework d'observabilité OpenTelemetry. Pour en savoir plus, consultez la section Configurer la collecte de traces à l'aide d'OpenTelemetry.
OpenTelemetry est un framework et un kit d'outils d'observabilité Open Source qui vous permet de créer et de gérer des données de télémétrie telles que des traces, des métriques et des journaux.
Avant de commencer
Vous devez configurer le SDK OpenTelemetry avec les options appropriées pour exporter vos données de télémétrie. Nous vous recommandons d'utiliser l'exportateur du protocole OpenTelemetry (OTLP).
Pour configurer des métriques côté client personnalisées à l'aide d'OpenTelemetry, vous devez configurer le SDK OpenTelemetry et l'exportateur OTLP:
Ajoutez les dépendances nécessaires à votre application à l'aide du code suivant:
Java
Go
Créez un objet OpenTelemetry avec l'exportateur OTLP et injectez-le dans Spanner à l'aide de
SpannerOptions
:Java
Go
Capturer la latence du GFE
La latence du Google Front End (GFE) correspond à la durée (en millisecondes) entre le moment où le réseau Google reçoit un appel de procédure à distance du client et le moment où le GFE reçoit le premier octet de la réponse.
Vous pouvez capturer la latence GFE à l'aide du code suivant:
Java
Go
L'exemple de code ajoute la chaîne spanner/gfe_latency
au nom de la métrique lors de son exportation vers Cloud Monitoring. Vous pouvez rechercher cette métrique dans Cloud Monitoring à l'aide de la chaîne ajoutée.
Capturer la latence des requêtes API Cloud Spanner
La latence des requêtes de l'API Cloud Spanner correspond au temps (en secondes) entre le premier octet de la requête client reçu par l'interface de l'API Cloud Spanner et le dernier octet de la réponse envoyée par l'interface.
Cette métrique de latence est disponible dans les métriques Cloud Monitoring.
Capturer la latence aller-retour du client
La latence aller-retour client correspond à la durée en millisecondes entre le premier octet de la requête API Cloud Spanner que le client envoie à la base de données (via le GFE et l'interface de l'API Cloud Spanner) et le dernier octet de la réponse que le client reçoit de la base de données.
La métrique de la latence aller-retour du client Spanner n'est pas prise en charge avec OpenTelemetry. Vous pouvez consulter la métrique côté client de la latence des opérations à la place. Pour en savoir plus, consultez la page Descriptions des métriques côté client.
Vous pouvez également instrumenter la métrique à l'aide d'OpenCensus avec un pont et migrer les données vers OpenTelemetry.
Capturer la latence des requêtes
La latence de requête correspond à la durée (en millisecondes) d'exécution des requêtes SQL dans la base de données Spanner.
Vous pouvez capturer la latence des requêtes à l'aide du code suivant:
Java
Go
L'exemple de code ajoute la chaîne spanner/query_stats_elapsed
au nom de la métrique lors de son exportation vers Cloud Monitoring. Vous pouvez rechercher cette métrique dans Cloud Monitoring à l'aide de la chaîne ajoutée.
Afficher les métriques dans l'Explorateur de métriques
Dans la console Google Cloud , accédez à la page "Explorateur de métriques".
Sélectionnez votre projet.
Cliquez sur Sélectionner une métrique.
Recherchez une métrique de latence à l'aide des chaînes suivantes:
roundtrip_latency
: pour la métrique de latence aller-retour du client.spanner/gfe_latency
: pour la métrique de latence GFE.spanner/query_stats_elapsed
: pour la métrique de latence des requêtes.
Sélectionnez la métrique, puis cliquez sur Appliquer.
Pour en savoir plus sur le regroupement ou l'agrégation de votre métrique, consultez la page Créer des requêtes à l'aide de menus.
Étape suivante
- En savoir plus sur OpenTelemetry
- Découvrez comment configurer le SDK OpenTelemetry.
- Découvrez comment migrer vers OpenTelemetry.
- Découvrez comment utiliser les métriques pour diagnostiquer la latence.