Utiliser le traçage distribué

Les requêtes entrantes adressées aux services Cloud Run génèrent automatiquement des traces que vous pouvez afficher dans Cloud Trace. Vous pouvez utiliser ces traces pour identifier les sources de problèmes de latence dans votre implémentation, sans avoir à ajouter d'autre instrumentation dans Cloud Trace. L'en-tête de propagation du contexte de trace W3C traceparent standard est automatiquement renseigné pour les requêtes Cloud Run.

Toutefois, si vous ajoutez une instrumentation supplémentaire, vous pouvez également utiliser Cloud Trace pour mesurer le temps nécessaire à la requête pour se propager à travers chaque couche de votre implémentation, par exemple le temps nécessaire pour effectuer une requête de base de données, pour recevoir les résultats d'une requête API ou pour exécuter une logique métier complexe. Chacune de ces mesures de temps spécifiques à une couche est un "segment". Vous pouvez afficher les traces dans Cloud Trace sous forme de graphiques en cascade reflétant les valeurs de latence.

Frais

Les traces générées automatiquement dans Cloud Run, qu'elles soient échantillonnées ou forcées, n'entraînent pas de frais. Toutefois, si vous utilisez des bibliothèques Cloud Trace et que vous ajoutez vos propres segments en les mettant en corrélation avec les segments fournis par Cloud Run, Cloud Trace vous sera facturé.

Taux d'échantillonnage des traces

Cloud Run n'échantillonne pas les traces de chaque requête. Avec Cloud Run, les requêtes sont échantillonnées à raison de 0,1 requête par seconde au maximum pour chaque instance (ou d'une requête toutes les 10 secondes). Vous pouvez également forcer le traçage d'une requête particulière. Si vous forcez le traçage d'une requête, celle-ci est échantillonnée à une fréquence maximale de 0,1 seconde pour chaque instance (ou 10 requêtes par seconde).

Cloud Run ne permet pas la configuration du taux d'échantillonnage de Cloud Run.

Quand ajouter l'instrumentation ?

Les traces sont générées automatiquement sans aucune instrumentation nécessaire dans votre service. Toutefois, dans certains cas, il est souhaitable d'ajouter un code d'instrumentation à votre service pour tirer pleinement parti de la fonctionnalité Cloud Trace. Par exemple, vous devez ajouter une instrumentation si vous souhaitez effectuer les actions suivantes :

  • Créer des segments de trace personnalisés, par exemple pour obtenir les données concernant la durée nécessaire à votre service pour récupérer du contenu de l'API Cloud Translation.
  • Propager le contexte de trace afin que Cloud Trace affiche le flux de requêtes sur plusieurs services en une seule requête.

Pour ajouter une instrumentation, consultez la section Instrumenter le traçage des applications. Notez que les traces résultant de l'instrumentation dans votre service entraînent des frais de facturation Cloud Trace standards.

Afficher les traces

Pour en savoir plus, consultez la documentation sur l'affichage des traces.