Les libellés et les attributs de Cloud Trace vous permettent d'associer des métadonnées clé/valeur (telles que des codes d'état HTTP, des noms de régions ou des propriétés d'application personnalisées) à vos spans. Vous pouvez ainsi filtrer, regrouper et résoudre les problèmes liés aux requêtes. Si vous utilisez l'API Cloud Trace v1, vous ajoutez des paires clé/valeur à l'aide du champ labels dans l'objet TraceSpan. Si vous utilisez l'API Trace v2, vous devez ajouter des métadonnées à l'aide d'un objet Attributes.
À propos des libellés et des attributs
Le champ labels est une carte de paires clé/valeur stockées sous forme de chaînes, avec une limite de 1 024 libellés par span. Pour connaître les restrictions de longueur des chaînes, consultez la documentation de référence de l'API pour labels.
Lorsque vous explorez un span sur la page Explorateur Trace, les libellés de ce span s'affichent dans l'onglet Attributs, comme illustré dans la capture d'écran suivante :

Pour savoir comment accéder à ces informations, consultez Rechercher et explorer des traces.
Clés prédéfinies
Libellés canoniques
Le tableau suivant répertorie les clés prédéfinies acceptées, inclut une description et, dans certains cas, inclut un exemple :
| Clé d'étiquette | Description Exemple |
|---|---|
/agent |
Identifiant de l'agent de suivi."node@google-cloud/trace-agent v3.0.0" |
/component |
Identifiant du composant."grpc" |
/error/message |
Un message d'erreur."Rendezvous of RPC that terminated with:
|
/error/name |
Nom à afficher pour l'erreur. |
/http/client_city |
Ville du client."NYC" |
/http/client_country |
Pays du client."US" |
/http/client_protocol |
Identifiant de protocole HTTP."1.0" |
/http/client_region |
Région du client."us-east4" |
/http/host |
Valeur de l'en-tête de l'hôte."default.example.com"
|
/http/method† |
Défini sur la méthode de requête HTTP. N'incluez pas cette clé pour les requêtes non HTTP. "GET"
|
/http/path† |
Chemin de l'URL de la demande."/cart/checkout" |
/http/redirected_url |
URL avant redirection. Dans ce cas, utilisez le libellé d'URL HTTP clé pour stocker l'URL finale. |
/http/request/size |
Nombre d'octets dans la requête. |
/http/response/size |
Nombre d'octets dans la réponse. |
/http/route† |
La route correspondante."/cart/checkout/:item_id" |
/http/status_code† |
Code d'état de réponse HTTP."200" |
/http/url |
URL de requête HTTP complète."http://example.com"
|
/http/user_agent |
Informations sur le user-agent HTTP à l'origine de la requête."python-requests/2.19.1"
|
/stacktrace |
Trace de la pile au format JSON.
Les traces de pile ne sont pas indexées pour la recherche. Ce libellé s'affiche dans la table Pile d'appel. Le libellé /stacktrace n'est utilisé que par l'API V1. Pour l'API V2, span contient un champ stackTrace.
|
"stackTrace": {
"stackFrames": {
"frame": [
{
"functionName": {
"value": "serverMethodTrace [as func]"
},
"fileName": {
"value":
"/usr/src/app/node_modules/@google-cloud/trace-agent/build/src/plugins/plugin-grpc.js"
},
"lineNumber": "249",
"columnNumber": "28"
},
{
"functionName": {
"value": "anonymous function"
},
"fileName": {
"value": "/usr/src/app/node_modules/grpc/src/server.js"
},
"lineNumber": "592",
"columnNumber": "13"
}
]
}
}, |
|
†Ce libellé et sa valeur sont affichés dans le tableau Détails inclus dans la vue Détails des traces.
Libellés canoniques pour GKE
Le tableau suivant répertorie tous les libellés canoniques pour un conteneur GKE :
| Nom à afficher dans le tableau Conteneur GKE Clé d'étiquette |
Description |
|---|---|
ID du projetg.co/r/k8s_container/project_id |
Le projet Google Cloud hébergeant le cluster GKE. Cliquez sur le nom du projet pour accéder au tableau de bord GKE dans la console Google Cloud . |
Emplacementg.co/r/k8s_container/location |
Emplacement physique du cluster GKE. |
Nom du clusterg.co/r/k8s_container/cluster_name
|
Identifie le cluster GKE. Pour accéder à la page de configuration Clusters, cliquez sur cette valeur. |
Espace de nomsg.co/r/k8s_container/namespace
|
Identifie l'espace de noms. Pour accéder à la page Charges de travail GKE, cliquez sur cette valeur. |
Nom du podg.co/r/k8s_container/pod_name
|
Identifie le pod GKE. Pour accéder au tableau de bord Détails des pods, cliquez sur cette valeur. |
Nom du conteneurg.co/r/k8s_container/container_name
|
Identifie le conteneur GKE. Pour accéder à la page des détails du conteneur, cliquez sur cette valeur. |
Exemple
Voici une représentation JSON partielle d'un objet Trace incluant plusieurs libellés :
{
"projectId": "a-sample-project",
"traceId": "00000000000000004db6dd68e7d37f57",
"spans": [
{
"spanId": "12913864118554233534",
"kind": "RPC_SERVER",
"name": "http://192.0.2.0/",
"startTime": "2024-04-02T19:37:34.149058Z",
"endTime": "2025-04-02T19:37:34.151136Z",
"parentSpanId": "5599906629317525335",
"labels": {
"/component": "default",
"/http/host": "192.0.2.0",
"/http/status_code": "200",
"/http/url": "http://192.0.2.0/",
"zipkin.io/http.route": "/**",
"/http/method": "GET",
"zipkin.io/endpoint.ipv4": "10.16.1.6",
"zipkin.io/http.path": "/",
"zipkin.io/mvc.controller.class": "ResourceHttpRequestHandler"
}
}
]
}
La trace précédente a été extraite d'un système utilisant un collecteur Zipkin.
Dans ce cas, les libellés avec des clés zipkin.io ont été ajoutés par ce collecteur.
Prefix g.co
Dans certains cas, les libellés affichés contiennent le préfixe g.co. Le préfixe g.co indique que ce libellé a été généré par un service Google. Si vous exécutez votre service sur App Engine ou une autre infrastructure Google Cloud , vous pouvez voir des libellés tels que les suivants :
| Clé de l'étiquette | Exemple de valeur de libellé |
|---|---|
g.co/agent |
opentelemetry-js 1.18.1; google-cloud-trace-exporter 2.1.0 |
g.co/r/generic_node/location |
global |
Libellés personnalisés
Vous pouvez créer des libellés personnalisés. Si vous créez un libellé personnalisé, nous vous recommandons d'utiliser les formats suivants :
/category/product/keypour les agents de produits connus. Exemple :/db/mongodb/read_size.short_host/path/keypour les clés spécifiques au domaine. Exemple :g.co/agent.
Si vous créez beaucoup de libellés personnalisés, cela peut avoir un impact sur les performances en raison de la cardinalité accrue des libellés.
Comme illustré dans la section Exemple, si vous utilisez un collecteur Zipkin ou une bibliothèque telle qu'OpenTelemetry, il est possible que des libellés soient ajoutés à vos spans de trace.
Utiliser OpenTelemetry
Si vous utilisez des bibliothèques OpenTelemetry, veillez à utiliser les conventions sémantiques OpenTelemetry lorsque vous créez des spans.