Trace fornisce un meccanismo per aggiungere dati significativi agli intervalli. Se utilizzi l'Cloud Trace API V1,
puoi aggiungere etichette, ovvero coppie chiave-valore, utilizzando il
labels campo nell'oggetto
TraceSpan dell'Cloud Trace API.
Se utilizzi l'Cloud Trace API V2, puoi aggiungere informazioni utilizzando un oggetto Attributes.
Quando esplori un intervallo, le etichette per quell'intervallo vengono visualizzate nella scheda Attributi. Ad esempio, lo screenshot seguente illustra questa scheda:

Per informazioni su come accedere a queste informazioni, consulta Trovare ed esplorare le tracce.
Il campo labels è una mappa di coppie chiave-valore. Le chiavi e i valori vengono archiviati come stringhe. Per le limitazioni della lunghezza delle stringhe, consulta il
riferimento API per labels.
È previsto un limite di 1024 etichette per intervallo.
Chiavi predefinite
Etichette canoniche
La tabella seguente elenca le chiavi predefinite supportate, include una descrizione e, in alcuni casi, include un esempio:
| Chiave di etichetta | Descrizione Esempio |
|---|---|
/agent |
Identificatore dell'agente di Trace."node@google-cloud/trace-agent v3.0.0" |
/component |
Identificatore del componente."grpc" |
/error/message |
Un messaggio di errore."Rendezvous of RPC that terminated with:
|
/error/name |
Nome visualizzato per l'errore. |
/http/client_city |
La città del client."NYC" |
/http/client_country |
Il paese del client."US" |
/http/client_protocol |
Identificatore del protocollo HTTP."1.0" |
/http/client_region |
La regione del client."us-east4" |
/http/host |
Il valore dell'
intestazione Host."default.example.com"
|
/http/method† |
Impostato sul metodo di richiesta HTTP. Non includere questa chiave per le richieste non HTTP. "GET"
|
/http/path† |
Percorso dell'URL della richiesta."/cart/checkout" |
/http/redirected_url |
L'URL prima del reindirizzamento. In questo caso, utilizza l'etichetta dell'URL HTTP per memorizzare l'URL finale. |
/http/request/size |
Numero di byte nella richiesta. |
/http/response/size |
Numero di byte nella risposta. |
/http/route† |
La route corrispondente."/cart/checkout/:item_id" |
/http/status_code† |
Codice di stato della risposta HTTP."200" |
/http/url |
URL completo della richiesta HTTP."http://example.com"
|
/http/user_agent |
Informazioni sull'
agente utente HTTP
che ha generato la richiesta."python-requests/2.19.1"
|
/stacktrace |
Analisi dello stack in formato JSON.
Le analisi dello stack non vengono indicizzate per la ricerca. Questa etichetta viene visualizzata nella tabella Call Stack. L'etichetta /stacktrace viene utilizzata solo dall'API V1. Per l'API V2, span contiene un campo 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"
}
]
}
}, |
|
†Questa etichetta e il relativo valore vengono visualizzati nella
tabella Dettagli inclusa nella
visualizzazione Dettagli traccia.
Etichette canoniche per GKE
La tabella seguente elenca tutte le etichette canoniche per un container GKE:
| Nome visualizzato nella tabella Container GKE Chiave di etichetta |
Descrizione |
|---|---|
ID progettog.co/r/k8s_container/project_id |
Il Google Cloud progetto che ospita il cluster GKE. Fai clic sul nome del progetto per andare alla dashboard GKE nella Google Cloud console. |
Localitàg.co/r/k8s_container/location |
La località fisica del cluster GKE. |
Nome clusterg.co/r/k8s_container/cluster_name
|
Identifica il cluster GKE. Per andare alla pagina di configurazione Cluster, fai clic su questo valore. |
Spazio dei nomig.co/r/k8s_container/namespace
|
Identifica lo spazio dei nomi. Per andare alla pagina Carichi di lavoro di GKE, fai clic su questo valore. |
Nome podg.co/r/k8s_container/pod_name
|
Identifica il pod GKE. Per andare alla dashboard Dettagli pod, fai clic su questo valore. |
Nome containerg.co/r/k8s_container/container_name
|
Identifica il container GKE. Per andare alla pagina dei dettagli del container, fai clic su questo valore. |
Esempio
Di seguito è riportata una rappresentazione JSON parziale di un oggetto Trace che include più etichette:
{
"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 traccia precedente è stata ricavata da un sistema che utilizza un raccoglitore Zipkin.
In questo caso, le etichette con chiavi zipkin.io sono state aggiunte da questo raccoglitore.
Prefisso g.co
In alcuni casi, le etichette visualizzate contengono un prefisso g.co. Il prefisso g.co indica che questa etichetta è stata generata da un servizio Google. Se esegui il
servizio su App Engine o su un'altra Google Cloud infrastruttura, potresti
visualizzare etichette come le seguenti:
| Chiave di etichetta | Valore di esempio dell'etichetta |
|---|---|
g.co/agent |
opentelemetry-js 1.18.1; google-cloud-trace-exporter 2.1.0 |
g.co/r/generic_node/location |
global |
Etichette personalizzate
Puoi creare etichette personalizzate. Se crei un'etichetta personalizzata, ti consigliamo di utilizzare i seguenti formati:
/category/product/keyper gli agenti di prodotti noti. Ad esempio,/db/mongodb/read_size.short_host/path/keyper le chiavi specifiche del dominio. Ad esempio,g.co/agent.
Se crei molte etichette personalizzate, potresti riscontrare un impatto sulle prestazioni a causa dell'aumento della cardinalità delle etichette.
Come illustrato nella sezione Esempio, se utilizzi un raccoglitore Zipkin o una libreria come OpenTelemetry, potresti aggiungere etichette agli intervalli di traccia.
Utilizzo di OpenTelemetry
Se utilizzi le librerie OpenTelemetry, assicurati di utilizzare le convenzioni semantiche di OpenTelemetry durante la creazione degli intervalli.