Filtros de Cloud Trace

Utiliza los filtros de seguimiento para seleccionar un conjunto de seguimiento en Cloud Trace. Utiliza un filtro de seguimiento de una de las siguientes maneras:

  • Como el parámetro filtro en una consulta con el método de la API list

  • Como parámetro Solicitar filtro cuando creas un informe de análisis

  • Como el campo Filtrar en la página del Explorador de seguimiento. Para obtener información sobre cómo crear y modificar estos filtros, consulta Cómo mostrar seguimientos recientes.

Los filtros te permiten especificar una o más condiciones que deben cumplirse para que se muestre un seguimiento. La sintaxis del filtro te permite definir cuándo las coincidencias son exactas o cuándo son pruebas de prefijos. Todas las coincidencias distinguen mayúsculas de minúsculas.

Descripción general del filtro

Los filtros de seguimiento contienen una secuencia de comparaciones denominadas términos. Los seguimientos deben coincidir con todos los términos en el filtro para seleccionar. Por ejemplo, el siguiente filtro coincide con los seguimientos que tienen una latencia de un segundo o más y tienen un intervalo denominado /modules.GetNumInstances.

+span:/modules.GetNumInstances latency:1s

Todas las comparaciones de string distinguen mayúsculas de minúsculas.

Atributos booleanos

Si deseas especificar valores en los atributos booleanos, usa 0 para falso y 1 para verdadero. Por ejemplo:

Client:0

Caracteres especiales

Para buscar un valor que contenga un espacio o el carácter de dos puntos (:), escribe el valor entre comillas dobles ("). Por ejemplo:

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

Para buscar el carácter de comillas dobles o barra inversa (\) dentro de una string entre comillas, reemplaza el carácter con una barra inversa. Por ejemplo:

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

Sintaxis de filtro

En la siguiente tabla y en otras secciones de esta página, NAME se refiere al nombre de un campo, mientras que VALUE se refiere al valor de un par clave-valor. Las cadenas _PREFIX y _EXACT son indicadores visuales de si una prueba es una prueba de prefijo o una coincidencia exacta. Por ejemplo, root:[NAME_PREFIX] significa que el nombre del intervalo raíz debe comenzar con [NAME_PREFIX].

En la siguiente tabla, se enumera la sintaxis de los filtros usados en Cloud Trace:

La API de Trace
Request Filter en la página Analysis Reports
Filtro en la página Explorador de seguimiento
root:[NAME_PREFIX] RootSpan:[NAME_PREFIX]
+root:[NAME_EXACT] RootSpan:+[NAME_EXACT]
span:[NAME_PREFIX] SpanName:[NAME_PREFIX]
+span:[NAME_EXACT] SpanName:+[NAME_EXACT]
[NAME_PREFIX] RootSpan:[NAME_PREFIX]
label:[LABEL_KEY] HasLabel:[LABEL_KEY]
[LABEL_KEY]: [VALUE_PREFIX] [LABEL_KEY]:[VALUE_PREFIX]*
+[LABEL_KEY]: [VALUE_EXACT] [LABEL_KEY]:+[VALUE]*
^[LABEL_KEY]: [VALUE_PREFIX] [LABEL_KEY]:^[VALUE_PREFIX]*
+^[LABEL_KEY]: [VALUE_EXACT] [LABEL_KEY]:^+[VALUE_EXACT]*, †
method:[VALUE_PREFIX] Method:[VALUE_PREFIX]
latency:10ms MinLatency:10ms
url:[VALUE_PREFIX] URL:[VALUE_PREFIX]

* No uses las siguientes palabras clave de Trace como claves de etiqueta: root, span, label, method, latency y url. No se pueden consultar los seguimientos con estas claves de etiquetas.
En la página del Explorador de seguimiento, la anotación +^ se convierte en ^+ cuando presionas Intro.

El resto de esta página contiene una descripción de los filtros cuando se usa la API de Trace y para el Filtro de solicitudes en la página Informes de análisis. Si usas el campo Filtro de la página Explorador de seguimiento, puedes usar la asignación de la tabla anterior para crear una expresión equivalente.

Ejemplos de filtros de solicitudes

A continuación, se definen los términos del filtro.

root:[NAME_PREFIX]

El nombre del intervalo raíz del seguimiento debe comenzar con [NAME_PREFIX]. Por ejemplo, el siguiente filtro coincide con un seguimiento llamado "/_ah/background", pero no con uno llamado "/_ahx/background":

root:/_ah/
+root:[NAME]

El nombre del intervalo raíz del seguimiento debe ser [NAME], exactamente. Por ejemplo:

+root:/_ah/background
[NAME_PREFIX]

Esta sintaxis es un atajo para root:[NAME_PREFIX].

+[NAME]

Esta sintaxis es un atajo para +root:[NAME].

span:[NAME_PREFIX]

El seguimiento debe tener al menos un intervalo cuyo nombre comience con [NAME_PREFIX]. Por ejemplo:

span:/modules.
+span:[NAME]

El seguimiento debe tener al menos un intervalo cuyo nombre sea [NAME], exactamente. Por ejemplo:

span:/modules.GetNumInstances
latency:[DURATION]

El seguimiento debe tener una latencia general mayor o igual que [DURATION]. La duración se expresa como un número entero seguido de un especificador de unidades: s para segundos, ms para milisegundos o ns para nanosegundos. Si no hay un especificador de unidades, las unidades son milisegundos. Por ejemplo, las siguientes cuatro duraciones son las mismas:

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

El seguimiento debe contener la clave de etiqueta especificada exactamente. No importa el valor de la etiqueta (si existe). Por ejemplo:

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

El seguimiento debe contener la clave de etiqueta especificada exactamente, y el valor de la etiqueta debe comenzar con [VALUE_PREFIX]. Por ejemplo, el siguiente término coincide con los seguimientos cuya versión de App Engine comienza con "2017".

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

El seguimiento debe contener el valor y de la clave de etiqueta especificada, exactamente. Por ejemplo:

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

Esta sintaxis es un acceso directo para la prueba de etiqueta, /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Esta sintaxis es un acceso directo para la prueba de etiqueta, +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Esta sintaxis es un acceso directo para la prueba de etiqueta, /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Esta sintaxis es un acceso directo para la prueba de etiqueta, +/http/url:[VALUE_EXACT].

Ejemplos de búsqueda del intervalo raíz

Para restringir el término de búsqueda solo al intervalo raíz, agrega un (^) antes de un término de búsqueda y después del opcional (+). Para el campo Filtro de la página Explorador de seguimiento, si agregas la anotación +^, se convierte en ^+ cuando presionas Intro.

A continuación, se muestran algunos términos de búsqueda del intervalo raíz y sus equivalencias.

^label:[LABEL_KEY]
Esta es la búsqueda del intervalo raíz para label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Esta es la búsqueda del intervalo raíz para [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Esta es la búsqueda del intervalo raíz para +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Esta es la búsqueda del intervalo raíz para method:[VALUE_PREFIX].
+^method:[VALUE]
Esta es la búsqueda del intervalo raíz para +method:[VALUE].
^url:[VALUE_PREFIX]
Esta es la búsqueda del intervalo raíz para url:[VALUE_PREFIX].
+^url:[VALUE]
Esta es la búsqueda del intervalo raíz para +url:[VALUE].
^span:[NAME_PREFIX]
Esto equivale a root:[NAME_PREFIX].
+^span:[NAME]
Esto equivale a +root:[NAME].

Cuando creas una consulta con términos mixtos, la búsqueda se puede personalizar aún más. Por ejemplo,

    +^url:/main /images method:200

coincide con los seguimientos cuando la etiqueta del intervalo raíz /http/url es exactamente "/main", el nombre del intervalo raíz tiene el prefijo /images y cualquier intervalo tiene la etiqueta /http/method con un valor de 200.

Soluciona problemas

Rendimiento lento

Si el filtro de seguimiento es complicado, tarda más de ejecutarse y es posible que se agote el tiempo de espera. Para mejorar el rendimiento, simplifica el filtro.

Sin resultados

Si tu filtro no muestra ningún seguimiento, verifica las siguientes condiciones:

  • Asegúrate de que no haya espacios en el filtro, salvo los que separan las comparaciones.

  • Asegúrate de que el tamaño de la letra y la ortografía de todas las palabras en el filtro sean correctos. Por ejemplo, si escribes mal una palabra clave, como method:GET, el filtro se interpreta como label:method:GET, que no coincide con ningún seguimiento.

  • Para probar los términos del filtro uno a la vez, usa el filtro Lista de seguimiento o el Explorador de API. Si ninguno de los términos muestra resultados, estas podrían ser las causas.