Filtros de Cloud Trace

Usa los filtros de seguimiento para seleccionar un conjunto de seguimientos de 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 API list

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

  • Como el campo Filtro en la página Lista de seguimiento Para obtener información sobre cómo crear y modificar estos filtros, consulta Filtros.

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

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

API de Trace
Filtro de solicitud en la página Informes de análisis
Filtro en la página Lista 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:[LABEL_KEY]:[VALUE_PREFIX]
+[LABEL_KEY]: [VALUE_PREFIX] Label:[LABEL_KEY]:+[VALUE_PREFIX]
^[LABEL_KEY]: [VALUE_PREFIX] Label:[LABEL_KEY]:^[VALUE_PREFIX]
+^[LABEL_KEY]: [VALUE_PREFIX] Label:[LABEL_KEY]:^+[VALUE_PREFIX]*
method:[VALUE_PREFIX] LABEL:method:[VALUE_PREFIX]
latency:10ms Latency:10ms
url:[VALUE_PREFIX] URL:[VALUE_PREFIX]

* En la Lista de seguimientos página, la anotación +^, se convierte en ^+ al presionar Intro para crear el adjunto de VLAN de supervisión.

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

Sintaxis de 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. 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 un nombre "/_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 acceso directo para root:[NAME_PREFIX].

+[NAME]

Esta sintaxis es un acceso directo 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 existe un especificador de unidades, las unidades son milisegundos. Por ejemplo, las siguientes cuatro duraciones son iguales:

 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]

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 etiquetas, /http/method:[VALUE_PREFIX].

+method:[VALUE]

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

url:[VALUE_PREFIX]

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

+url:[VALUE]

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

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 espacios en blanco 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 (\\)"

Para restringir el término de búsqueda solo al intervalo raíz, agrega un (^) antes del término de búsqueda y después del opcional (+). Para el Filtro en la página Lista 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 una búsqueda del intervalo raíz para label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Esta es una búsqueda del intervalo raíz para [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Esta es una búsqueda del intervalo raíz para +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Esta es una búsqueda del intervalo raíz para method:[VALUE_PREFIX].
+^method:[VALUE]
Esta es una búsqueda del intervalo raíz para +method:[VALUE].
^url:[VALUE_PREFIX]
Esta es una búsqueda del intervalo raíz para url:[VALUE_PREFIX].
+^url:[VALUE]
Esta es una 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 de 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 puede agotar 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.