Filtri Cloud Trace

I filtri Cloud Trace ti consentono di eseguire query sul metodo dell'API Trace list per recuperare solo le tracce che corrispondono a criteri specifici, come nomi degli intervalli, latenza minima, attributi HTTP o etichette.

Queste espressioni di filtro non si applicano alla pagina Esplora tracce nella console Google Cloud . In Trace Explorer, puoi filtrare le tracce utilizzando i filtri predefiniti nel riquadro Filtri span o utilizzando la barra Filtro. Per saperne di più, vedi Trovare ed esplorare le tracce.

Panoramica dei filtri

I filtri di Trace sono costituiti da una sequenza di confronti chiamati termini. Le tracce devono corrispondere a tutti i termini del filtro per essere selezionate. Ad esempio, il seguente filtro corrisponde alle tracce con una latenza di un secondo o più e che contengono uno span denominato /modules.GetNumInstances:

+span:/modules.GetNumInstances latency:1s

Tutti i confronti tra stringhe sono sensibili alle maiuscole.

Attributi booleani

Per specificare i valori degli attributi booleani, utilizza false per false e true per true:

Client:true

Caratteri speciali

I valori semplici, ovvero quelli che corrispondono all'espressione regolare [a-zA-Z0-9./_][a-zA-Z0-9./_-]*, possono essere forniti senza virgolette:

environment:production
path:/index.html
error_code:200

I valori che includono altri caratteri, inclusi gli spazi vuoti, devono essere racchiusi tra virgolette doppie ("):

my-label:"Notice: This value contains spaces and a colon"

Per cercare il carattere virgolette doppie o la barra rovesciata (\) all'interno di una stringa tra virgolette, esegui l'escape del carattere con una barra rovesciata:

my-label:"Notice: This value contains spaces, a colon, a \"quote\", and a backslash (\\)"

Sintassi filtro

In questa pagina, NAME si riferisce al nome di un campo, mentre VALUE si riferisce al valore di una coppia chiave-valore. Le stringhe _PREFIX e _EXACT sono indicazioni visive che mostrano se un test è un test con prefisso o a corrispondenza esatta. Ad esempio, root:[NAME_PREFIX] significa che il nome dello span principale deve iniziare con [NAME_PREFIX].

Il resto di questa pagina descrive la sintassi del filtro per l'API Trace.

Esempi di filtri delle richieste

Il seguente elenco descrive i termini di filtro:

root:[NAME_PREFIX]

Il nome dello span radice della traccia deve iniziare con [NAME_PREFIX]. Ad esempio, il seguente filtro corrisponde a una traccia denominata "/_ah/background", ma non a una denominata "/_ahx/background":

root:/_ah/
+root:[NAME]

Il nome dello span radice della traccia deve essere esattamente [NAME]. Ad esempio:

+root:/_ah/background
[NAME_PREFIX]

Questa sintassi è una scorciatoia per root:[NAME_PREFIX].

+[NAME]

Questa sintassi è una scorciatoia per +root:[NAME].

span:[NAME_PREFIX]

La traccia deve avere almeno uno span il cui nome inizia con [NAME_PREFIX]. Ad esempio:

span:/modules.
+span:[NAME]

La traccia deve avere almeno uno span il cui nome sia esattamente [NAME]. Ad esempio:

+span:/modules.GetNumInstances
latency:[DURATION]

La traccia deve avere una latenza complessiva maggiore o uguale a [DURATION]. La durata è espressa come numero intero seguito da un identificatore di unità: s per i secondi, ms per i millisecondi o ns per i nanosecondi. Se non è presente un identificatore di unità, le unità sono millisecondi. Ad esempio, le seguenti quattro durate sono uguali:

12s 12000ms 12000000ns 12000
label:[LABEL_KEY]

La traccia deve contenere esattamente la chiave di etichetta specificata. Il valore dell'etichetta (se presente) non è importante. Ad esempio:

label:/http/url
[LABEL_KEY]:[VALUE_PREFIX]

La traccia deve contenere esattamente la chiave di etichetta specificata e il valore dell'etichetta deve iniziare con [VALUE_PREFIX]. Ad esempio, il seguente termine corrisponde alle tracce la cui versione di App Engine inizia con "2017":

g.co/gae/app/module_version:2017
+[LABEL_KEY]:[VALUE_EXACT]

La traccia deve contenere esattamente la chiave di etichetta e il valore specificati. Ad esempio:

+g.co/gae/app/module_version:201750925t173233.387410594824284458
method:[VALUE_PREFIX]

Questa sintassi è una scorciatoia per il test dell'etichetta /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Questa sintassi è una scorciatoia per il test dell'etichetta +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Questa sintassi è una scorciatoia per il test dell'etichetta /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Questa sintassi è una scorciatoia per il test dell'etichetta +/http/url:[VALUE_EXACT].

Esempi di ricerca di span principali

Per limitare il termine di ricerca solo allo span radice, aggiungi un accento circonflesso (^) prima di un termine di ricerca e dopo il segno più facoltativo (+). Per il campo Filtro nella pagina Esplora tracce, se aggiungi l'annotazione +^, questa viene convertita in ^+ quando premi Invio.

L'elenco seguente mostra alcuni termini di ricerca solo per lo span radice e le relative equivalenze:

^label:[LABEL_KEY]
Questa è una ricerca di intervalli principali per label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Questa è una ricerca di intervalli principali per [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Questa è una ricerca di intervalli principali per +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Questa è una ricerca di intervalli principali per method:[VALUE_PREFIX].
+^method:[VALUE]
Questa è una ricerca di intervalli principali per +method:[VALUE].
^url:[VALUE_PREFIX]
Questa è una ricerca di intervalli principali per url:[VALUE_PREFIX].
+^url:[VALUE]
Questa è una ricerca di intervalli principali per +url:[VALUE].
^span:[NAME_PREFIX]
Equivale a root:[NAME_PREFIX].
+^span:[NAME]
Equivale a +root:[NAME].

Puoi personalizzare ulteriormente la ricerca creando una query con termini misti. Ad esempio,

+^url:/main /images method:200

corrisponde alle tracce quando l'etichetta dello span radice /http/url è esattamente "/main", il nome dello span radice ha il prefisso /images e qualsiasi span ha l'etichetta /http/method con un valore di 200.

Risoluzione dei problemi

Le sezioni seguenti descrivono come risolvere i problemi comuni relativi ai filtri di Trace.

Prestazioni lente

Se il filtro di traccia è complesso, l'esecuzione richiede più tempo e potrebbe scadere. Per migliorare il rendimento, semplifica il filtro.

Nessun risultato

Se il filtro non restituisce alcuna traccia, controlla quanto segue:

  • Assicurati che non ci siano spazi nel filtro, ad eccezione di quelli che separano i confronti.

  • Assicurati che la combinazione di maiuscole e minuscole e l'ortografia di tutte le parole nel filtro siano corrette. Ad esempio, se scrivi in modo errato una parola chiave come method:GET, il filtro viene interpretato come label:method:GET, che non corrisponde ad alcuna traccia.

  • Per testare i termini del filtro uno alla volta, vai al metodo API list e poi utilizza Explorer API. Se uno dei termini non restituisce risultati, potrebbe essere il motivo per cui non vengono restituiti dati.

    Explorer API è aperto quando nella pagina viene visualizzato un riquadro intitolato Prova questo metodo. Se necessario, fai clic su Prova, che apre Explorer API.