Filtri Cloud Trace

Questo documento descrive come configurare i filtri quando utilizzi il metodo list dell'Cloud Trace API. I filtri ti consentono di specificare una o più condizioni che devono essere soddisfatte per restituire una traccia.

Questa pagina non si applica alla pagina Esplora tracce. Per filtrare i dati visualizzati in questa pagina, utilizza i filtri predefiniti, elencati nel riquadro Filtri di intervallo, oppure utilizza la barra Filtro. Per saperne di più, consulta 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 almeno un secondo e che contengono un intervallo denominato /modules.GetNumInstances:

+span:/modules.GetNumInstances latency:1s

Tutti i confronti di stringhe fanno distinzione tra maiuscole e minuscole.

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, devono essere racchiusi tra virgolette doppie ("):

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

Per cercare il carattere virgolette doppie o il carattere barra rovesciata (\) all'interno di una stringa tra virgolette, utilizza una barra rovesciata per dare un'interpretazione letterale al carattere:

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 indicano se un test è un test di prefisso o una corrispondenza esatta. Ad esempio, root:[NAME_PREFIX] significa che il nome dell'intervallo principale deve iniziare con [NAME_PREFIX].

Il resto di questa pagina contiene una descrizione dei filtri quando si utilizza Cloud Trace API.

Esempi di filtri di richiesta

Di seguito sono descritti i termini del filtro:

root:[NAME_PREFIX]

Il nome dell'intervallo principale 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 dell'intervallo principale della traccia deve essere esattamente [NAME]. Ad esempio:

+root:/_ah/background
[NAME_PREFIX]

Questa sintassi è un'abbreviazione di root:[NAME_PREFIX].

+[NAME]

Questa sintassi è un'abbreviazione di +root:[NAME].

span:[NAME_PREFIX]

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

span:/modules.
+span:[NAME]

La traccia deve avere almeno un intervallo il cui nome è 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 un numero intero seguito da uno specificatore di unità: s per secondi, ms per millisecondi o ns per nanosecondi. Se non è presente uno specificatore di unità, le unità sono in millisecondi. Ad esempio, le seguenti quattro durate sono le stesse:

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

La traccia deve contenere esattamente la chiave di etichetta specificata. Il valore dell'etichetta (se presente) non ha importanza. 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 è un'abbreviazione del test di etichetta /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Questa sintassi è un'abbreviazione del test di etichetta +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Questa sintassi è un'abbreviazione del test di etichetta /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Questa sintassi è un'abbreviazione del test di etichetta +/http/url:[VALUE_EXACT].

Esempi di ricerca di intervalli principali

Per limitare il termine di ricerca solo all'intervallo principale, aggiungi un (^) prima di un termine di ricerca e dopo l'opzione (+). Per il campo Filtro nella pagina Esplora tracce, se aggiungi l'annotazione +^, questa viene convertita in ^+ quando premi Invio.

Di seguito sono riportati alcuni termini di ricerca solo per l'intervallo principale e le relative equivalenze:

^label:[LABEL_KEY]
Si tratta di una ricerca di intervalli principali per label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Si tratta di una ricerca di intervalli principali per [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Si tratta di una ricerca di intervalli principali per +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Si tratta di una ricerca di intervalli principali per method:[VALUE_PREFIX].
+^method:[VALUE]
Si tratta di una ricerca di intervalli principali per +method:[VALUE].
^url:[VALUE_PREFIX]
Si tratta di una ricerca di intervalli principali per url:[VALUE_PREFIX].
+^url:[VALUE]
Si tratta di una ricerca di intervalli principali per +url:[VALUE].
^span:[NAME_PREFIX]
È equivalente a root:[NAME_PREFIX].
+^span:[NAME]
È equivalente a +root:[NAME].

Creando una query con termini misti, la ricerca può essere ulteriormente personalizzata. Ad esempio,

    +^url:/main /images method:200

corrisponde alle tracce quando l'etichetta dell'intervallo principale /http/url è esattamente "/main", il nome dell'intervallo principale è preceduto da /images e qualsiasi intervallo ha l'etichetta /http/method con un valore di 200.

Risoluzione dei problemi

Questa sezione contiene contenuti per la risoluzione dei problemi.

Prestazioni lente

Se il filtro di traccia è complicato, l'esecuzione richiede più tempo e potrebbe andare in timeout. Per migliorare le prestazioni, semplifica il filtro.

Nessun risultato

Se il filtro non restituisce tracce, controlla quanto segue:

  • Assicurati che non ci siano spazi nel filtro, tranne quelli che separano i confronti.

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

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

    Explorer API è aperto quando la pagina mostra un riquadro intitolato Prova questo metodo. Se necessario, fai clic su Prova per aprire Explorer API.