Cloud Trace, un système de traçage distribué pour Google Cloud, vous aide à comprendre le temps nécessaire à votre application pour gérer les requêtes entrantes des utilisateurs ou d'autres applications, ainsi que le temps nécessaire pour effectuer des opérations telles que les appels RPC. Trace peut également vous aider lorsque vous développez un service, une application agentique ou que vous résolvez un problème. Par exemple, il peut vous aider à comprendre comment les requêtes sont traitées dans une architecture de microservices complexe et à identifier les journaux à examiner.
Comme Trace reçoit des données de latence de Google Cloud services tels que App Engine et des applications que vous instrumentez, il peut vous aider à répondre aux questions suivantes :
- Combien de temps faut-il à mon application pour traiter une requête donnée ?
- Pourquoi mon application est-elle si longue à traiter ma requête ?
- Pourquoi le traitement de certaines requêtes est-il plus long que pour d'autres ?
- Quelle est la latence globale des requêtes adressées à mon application ?
- La latence de mon application a-t-elle augmenté ou diminué avec le temps ?
- Que puis-je faire pour réduire la latence de mon application ?
- Quelles sont les dépendances de mon application ?
Si vous souhaitez savoir comment utiliser Trace pour gérer vos applications, consultez l'article de blog Résoudre les problèmes liés aux applications distribuées : utiliser conjointement les traces et les journaux pour analyser l'origine des problèmes.
Pour en savoir plus sur le profilage de votre application, consultez Cloud Profiler.
Environnements compatibles
Trace s'exécute sous Linux dans les environnements suivants :
- Compute Engine
- Google Kubernetes Engine (GKE)
- Apigee (préversion publique)
- Environnement flexible App Engine
- Environnement standard App Engine
- Cloud Run
- Cloud Service Mesh
- Insights sur les requêtes Cloud SQL
- Environnements non-Google Cloud
Trace fournit des bibliothèques clientes pour instrumenter votre application afin de capturer des informations de trace. Pour obtenir les instructions de configuration par langage, consultez la section Instrumenter pour Trace.
Configurations avec traçage automatique
Certaines configurations entraînent la capture automatique des données de trace :
Environnement standard App Engine
Les applications Java 8, Python 2 et PHP 5 n'ont pas besoin d'utiliser les bibliothèques clientes Trace. Ces environnements d'exécution envoient automatiquement des données de latence à Trace pour les requêtes adressées aux URI de l'application. Les requêtes incluent des données de latence pour les appels RPC aller-retour aux services App Engine. Trace fonctionne avec toutes les API d'administration d'App Engine, à l'exception de Cloud SQL.
Fonctions Cloud Run et Cloud Run
Pour les requêtes HTTP entrantes et sortantes, les données de latence sont automatiquement envoyées à Trace.
API qui ingèrent des données de trace
Vous pouvez envoyer des données de trace à votre projet à l'aide de l'API Telemetry ou de l'API Cloud Trace. Nous vous recommandons d'utiliser l'API Telemetry pour les raisons suivantes :
L'API est compatible avec l'écosystème Open Source OpenTelemetry et ses limites sont souvent plus généreuses que celles de l'API Cloud Trace, qui est une API propriétaire Google Cloud
Vos données de trace sont stockées dans un format généralement cohérent avec les fichiers proto définis par le protocole OTLP OpenTelemetry. Certains champs peuvent être convertis d'un type de données spécifique à OpenTelemetry en un type de données JSON avant le stockage. Pour en savoir plus sur le format de stockage, consultez la section Schéma des données de trace.
Pour l'exportation des données de trace basée sur un collecteur, votre instrumentation ne dépend pas d'un Google Cloud-exportateur spécifique.
Certaines fonctionnalités, telles que la surveillance des applications, reposent sur des informations qui ne sont disponibles que lorsque vous envoyez des données de trace à l'API Telemetry.
Si vous souhaitez empêcher votre Google Cloud projet de stocker des données de trace, désactivez l'API Cloud Trace. La désactivation de l'API Cloud Trace entraîne les conséquences suivantes :
- Google Cloud Les services n'envoient pas de données de trace à votre projet.
- Google Cloud répond aux requêtes envoyées à un point de terminaison de l'API Cloud Trace avec un code d'erreur.
- Google Cloud Observability ignore les données de trace envoyées au point de terminaison de l'API Telemetry spécifique aux traces. Ne désactivez pas l'API Telemetry, car elle peut recevoir des données de journal, de métrique et de trace.
Si vous gérez une organisation et que vous souhaitez empêcher l'utilisation de Cloud Trace, alors créez une contrainte de règle d'administration.
Cloud Trace et applications agentiques
Pour comprendre le comportement de vos applications agentiques, configurez-les de manière à collecter les requêtes et les réponses ou à générer des segments lorsqu'elles appellent des serveurs MCP Google Cloud à distance . Les requêtes et les réponses vous aident à comprendre le raisonnement utilisé par votre application agentique. Les segments qui enregistrent les appels d'outils vous aident à confirmer l'appel d'outils, les états des appels et les latences des requêtes.
Plusieurs exemples d'instrumentation vous montrent comment configurer une application pour collecter les requêtes et les réponses. Ces exemples reposent sur OpenTelemetry. Pour en savoir plus, consultez la section Instrumenter vos applications d'IA générative.
Pour savoir quels serveurs MCP Google Cloud à distance sont compatibles avec la génération de traces et comment configurer votre application pour demander à ces serveurs de créer des segments, consultez la section Examiner les appels MCP à l'aide de Trace.
Comment instrumenter votre application
Instrumentez votre application pour collecter des informations spécifiques qui vous aident à comprendre ses performances et à résoudre les problèmes. Plusieurs frameworks d'instrumentation Open Source collectent des données de journal, de métrique et de trace données, et peuvent envoyer ces données à n'importe quel fournisseur, y compris Google Cloud. Pour vos applications agentiques, certains frameworks peuvent collecter vos requêtes et vos réponses ou transmettre un contexte qui permet de suivre certains appels de serveurs MCP Google Cloud à distance.
Pour instrumenter votre application, nous vous recommandons d'utiliser un framework d'instrumentation Open Source neutre du point du vue du fournisseur, tel qu' OpenTelemetry, plutôt que des API spécifiques aux fournisseurs et aux produits ou des bibliothèques clientes. Pour en savoir plus sur ces frameworks, consultez les sections Instrumentation et observabilité et Choisir une approche d'instrumentation.
Les exemples d'instrumentation que nous fournissons utilisent OpenTelemetry :
Pour les exemples qui utilisent une exportation basée sur un collecteur, consultez les ressources suivantes :
Ces exemples envoient des données de trace à l'API Telemetry.
Pour savoir comment utiliser une exportation directe des données de trace et envoyer ces données à l'API Telemetry, consultez la section Migrer de l'exportateur Trace vers le point de terminaison OTLP.
Pour obtenir des exemples qui vous montrent comment configurer une application agentique pour collecter les requêtes et les réponses, consultez la section Instrumenter vos applications d'IA générative.
- Pour savoir quels serveurs MCP Google Cloud à distance sont compatibles avec la génération de traces et comment configurer votre application pour demander à ces serveurs de créer des segments, consultez la section Examiner les appels MCP à l'aide de Trace.
Vous pouvez également utiliser les bibliothèques clientes Cloud Trace pour instrumenter votre application. Toutefois, nous vous recommandons d'utiliser OpenTelemetry. Les bibliothèques OpenTelemetry sont préférables aux bibliothèques clientes Trace, car elles sont plus simples et exportent les données de trace au format OTLP, défini par OpenTelemetry. Pour en savoir plus, consultez la section Bibliothèques clientes pour Cloud Trace.
Composants
Trace est un client de traçage qui collecte des traces et les envoie à votre Google Cloud projet. Vous pouvez ensuite consulter et analyser les données collectées par l'agent dans la Google Cloud console. Pour en savoir plus sur le modèle de données, consultez la section Traces et segments.
Client de traçage
Si une bibliothèque OpenTelemetry est disponible pour votre langage de programmation, vous pouvez simplifier le processus de création et d'envoi de données de trace en utilisant OpenTelemetry. En plus d'être plus simple à utiliser, OpenTelemetry implémente le traitement par lot, ce qui peut améliorer les performances.
Si aucune bibliothèque OpenTelemetry n'existe, instrumentez votre code en important la bibliothèque du SDK Trace et en utilisant l'API Cloud Trace. L'API Cloud Trace envoie des données de trace à votre Google Cloud projet.
Interface de traçage
Vous pouvez afficher et analyser vos données de trace en temps quasi réel dans l'interface Trace.
Pour afficher et analyser vos données de segment, vous pouvez utiliser les Explorateur Trace et Observability Analytics pages de la Google Cloud console :
Explorateur Trace : affiche des informations agrégées sur vos données de trace et vous permet d'examiner des traces individuelles en détail. Les données de latence agrégées sont affichées sur une carte de densité que vous pouvez explorer avec votre pointeur. Pour limiter les données affichées, vous pouvez ajouter des filtres. Cette page vous permet également d'afficher et d'explorer des segments et des traces individuels :
- Pour savoir comment afficher les données de trace stockées dans plusieurs projets, consultez la section Créer et gérer un champ d'application de trace.
- Pour savoir comment filtrer et afficher vos données de trace, consultez la section Rechercher et explorer des traces.
Observability Analytics : cette page vous permet d'exécuter des requêtes qui effectuent une analyse agrégée de vos segments à l'aide de SQL. Vos requêtes SQL peuvent également joindre vos données de trace et de journal. Vous pouvez afficher les résultats de votre requête sous forme de tableau ou de graphique. Si vous créez un ensemble de données associé, vous pouvez utiliser BigQuery pour analyser vos segments. Pour en savoir plus, consultez la section Interroger et analyser des traces.
Compatibilité avec VPC Service Controls
Trace est un service compatible avec VPC Service Controls. Le nom du service Trace est cloudtrace.googleapis.com. Toutes les restrictions VPC Service Controls que vous créez pour le service Trace ne s'appliquent qu'à ce service. Ces restrictions
ne s'appliquent à aucun autre service, y compris ceux comme le
telemetry.googleapis.com service,
qui peuvent également ingérer des données de trace.
Pour en savoir plus, consultez les ressources suivantes :
Cloud Trace et résidence des données
Si vous utilisez Assured Workloads car vous avez des exigences de résidence des données ou de niveau d'impact 4 (IL4), n'utilisez pas l'API Cloud Trace pour envoyer des segments de trace.
Si vous souhaitez empêcher votre Google Cloud projet de stocker des données de trace, désactivez l'API Cloud Trace. La désactivation de l'API Cloud Trace entraîne les conséquences suivantes :
- Google Cloud Les services n'envoient pas de données de trace à votre projet.
- Google Cloud répond aux requêtes envoyées à un point de terminaison de l'API Cloud Trace avec un code d'erreur.
- Google Cloud Observability ignore les données de trace envoyées au point de terminaison de l'API Telemetry spécifique aux traces. Ne désactivez pas l'API Telemetry, car elle peut recevoir des données de journal, de métrique et de trace.
Si vous gérez une organisation et que vous souhaitez empêcher l'utilisation de Cloud Trace, alors créez une contrainte de règle d'administration.
Tarifs
Pour en savoir plus sur les tarifs de Cloud Trace, consultez la page Tarifs de Google Cloud Observability.
Étape suivante
Lisez le Guide de démarrage rapide.
Pour plus d'informations sur les quotas et les limites, consultez la section Quotas et limites.
Consultez nos ressources sur le DevOps et découvrez le programme de recherche DevOps Research and Assessment.