Filtros do Cloud Trace

Este documento descreve como pode configurar filtros quando usa o método Cloud Trace API list. Os filtros permitem-lhe especificar uma ou mais condições que têm de ser satisfeitas para que um rastreio seja devolvido.

A página não se aplica à página Explorador de rastreios. Para filtrar os dados apresentados nessa página, use os filtros predefinidos, que estão listados no painel Filtros de intervalo, ou use a barra Filtro. Para mais informações, consulte o artigo Encontre e explore rastreios.

Vista geral dos filtros

Os filtros de rastreio consistem numa sequência de comparações denominadas termos. Os rastreios têm de corresponder a todos os termos no filtro para serem selecionados. Por exemplo, o filtro seguinte corresponde a rastreios com uma latência de um segundo ou mais e que contêm um intervalo com o nome /modules.GetNumInstances:

+span:/modules.GetNumInstances latency:1s

Todas as comparações de strings são sensíveis a maiúsculas e minúsculas.

Atributos booleanos

Para especificar valores para atributos booleanos, use false para falso e true para verdadeiro:

Client:true

Carateres especiais

Os valores simples, ou seja, os que correspondem à expressão regular [a-zA-Z0-9./_][a-zA-Z0-9./_-]*, podem ser fornecidos sem aspas:

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

Os valores que incluem outros carateres, incluindo espaços em branco, têm de estar entre aspas duplas ("):

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

Para pesquisar o caráter aspa ou o caráter barra invertida (\) numa string entre aspas, introduza uma barra invertida antes do caráter:

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

Sintaxe do filtro

Nesta página, NAME refere-se ao nome de um campo, enquanto VALUE se refere ao valor de um par de chave-valor. As strings _PREFIX e _EXACT são indicações visuais que determinam se um teste é um teste de prefixo ou uma correspondência exata. Por exemplo, root:[NAME_PREFIX] significa que o nome do intervalo raiz tem de começar por [NAME_PREFIX].

O resto desta página contém uma descrição dos filtros quando usa a API Cloud Trace.

Exemplos de filtros de pedidos

A seguir, são descritos os termos de filtro:

root:[NAME_PREFIX]

O nome do intervalo raiz do rastreio tem de começar por [NAME_PREFIX]. Por exemplo, o filtro seguinte corresponde a um rastreio denominado "/_ah/background", mas não a um denominado "/_ahx/background":

root:/_ah/
+root:[NAME]

O nome do intervalo raiz do rastreio tem de ser [NAME], exatamente. Por exemplo:

+root:/_ah/background
[NAME_PREFIX]

Esta sintaxe é um atalho para root:[NAME_PREFIX].

+[NAME]

Esta sintaxe é um atalho para +root:[NAME].

span:[NAME_PREFIX]

O rastreio tem de ter, pelo menos, um intervalo cujo nome comece por [NAME_PREFIX]. Por exemplo:

span:/modules.
+span:[NAME]

O rastreio tem de ter, pelo menos, um intervalo cujo nome seja [NAME], exatamente. Por exemplo:

span:/modules.GetNumInstances
latency:[DURATION]

O rastreio tem de ter uma latência geral superior ou igual a [DURATION]. A duração é expressa como um número inteiro seguido de um especificador de unidades: s para segundos, ms para milissegundos ou ns para nanosegundos. Se não existir um especificador de unidade, as unidades são milissegundos. Por exemplo, as seguintes quatro durações são iguais:

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

O rastreio tem de conter exatamente a chave da etiqueta especificada. O valor da etiqueta (se existir) não é importante. Por exemplo,

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

O rastreio tem de conter exatamente a chave da etiqueta especificada, e o valor da etiqueta tem de começar por [VALUE_PREFIX]. Por exemplo, o seguinte termo corresponde a rastreios cuja versão do App Engine começa com "2017".

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

O rastreio tem de conter exatamente a chave de etiqueta especificada e o valor. Por exemplo,

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

Esta sintaxe é um atalho para o teste de etiquetas, /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Esta sintaxe é um atalho para o teste de etiquetas, +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Esta sintaxe é um atalho para o teste de etiquetas, /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Esta sintaxe é um atalho para o teste de etiquetas, +/http/url:[VALUE_EXACT].

Exemplos de pesquisa de intervalo de raiz

Para restringir o termo de pesquisa apenas ao intervalo raiz, adicione (^) antes de um termo de pesquisa e depois do (+) opcional. Para o campo Filtro na página Explorador de rastreios, se adicionar a anotação +^, esta é convertida em ^+ quando premir Enter.

Seguem-se alguns termos de pesquisa apenas com o radical e as respetivas equivalências:

^label:[LABEL_KEY]
Esta é uma pesquisa de intervalo de raiz para label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Esta é uma pesquisa de intervalo de raiz para [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Esta é uma pesquisa de intervalo de raiz para +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Esta é uma pesquisa de intervalo de raiz para method:[VALUE_PREFIX].
+^method:[VALUE]
Esta é uma pesquisa de intervalo de raiz para +method:[VALUE].
^url:[VALUE_PREFIX]
Esta é uma pesquisa de intervalo de raiz para url:[VALUE_PREFIX].
+^url:[VALUE]
Esta é uma pesquisa de intervalo de raiz para +url:[VALUE].
^span:[NAME_PREFIX]
Isto é equivalente a root:[NAME_PREFIX].
+^span:[NAME]
Isto é equivalente a +root:[NAME].

Ao criar uma consulta com termos mistos, a pesquisa pode ser ainda mais personalizada. Por exemplo,

    +^url:/main /images method:200

corresponde a rastreios quando a etiqueta do intervalo raiz /http/url é exatamente "/main", o nome do intervalo raiz tem o prefixo /images e qualquer intervalo tem a etiqueta /http/method com um valor de 200.

Resolução de problemas

Esta secção contém conteúdo de resolução de problemas.

Desempenho lento

Se o filtro de rastreio for complicado, demora mais tempo a ser executado e pode atingir o limite de tempo. Para melhorar o desempenho, simplifique o filtro.

Nenhum resultado

Se o filtro não devolver rastreios, verifique o seguinte:

  • Certifique-se de que não existem espaços no filtro, exceto os que separam as comparações.

  • Certifique-se de que a capitalização e a ortografia de todas as palavras no filtro estão corretas. Por exemplo, se escrever incorretamente uma palavra-chave, como method:GET, o filtro é interpretado como label:method:GET, que não corresponde a nenhum rastreio.

  • Para testar os termos do filtro um de cada vez, aceda ao método da API list e, em seguida, use o Explorador de APIs. Se um dos termos não devolver resultados, esse termo pode ser o motivo pelo qual não são devolvidos dados.

    O APIs Explorer está aberto quando a página apresenta um painel com o título: Experimentar este método. Se necessário, clique em Experimentar, que abre o APIs Explorer.