Filtros de Cloud Trace

Los filtros de Cloud Trace te permiten consultar el método list de la API de Trace para recuperar solo los seguimientos que coinciden con criterios específicos, como nombres de intervalos, latencia mínima, atributos HTTP o etiquetas.

Estas expresiones de filtro no se aplican a la página Explorador de seguimiento en la consola de Google Cloud . En el Explorador de seguimientos, puedes filtrar los seguimientos con los filtros predefinidos en el panel Filtros de intervalo o con la barra de Filtro. Para obtener más información, consulta Busca y explora seguimientos.

Resumen de filtros

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 registros que tienen una latencia de un segundo o más y que contienen un intervalo llamado /modules.GetNumInstances:

+span:/modules.GetNumInstances latency:1s

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

Atributos booleanos

Para especificar valores para los atributos booleanos, usa false para falso y true para verdadero:

Client:true

Caracteres especiales

Los valores simples, es decir, los que coinciden con la expresión regular [a-zA-Z0-9./_][a-zA-Z0-9./_-]*, se pueden proporcionar sin comillas:

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

Los valores que incluyen otros caracteres, incluidos los espacios en blanco, deben estar entre comillas dobles ("):

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

Para buscar el carácter de comillas dobles o el carácter de barra inversa (\) dentro de una cadena entre comillas, escapa el carácter con una barra inversa:

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

Sintaxis de filtro

En esta página, NAME hace referencia al nombre de un campo, y VALUE, al valor de un par clave-valor. Las cadenas _PREFIX y _EXACT son indicaciones visuales que muestran si una prueba es de prefijo o de concordancia exacta. Por ejemplo, root:[NAME_PREFIX] significa que el nombre del intervalo raíz debe comenzar con [NAME_PREFIX].

En el resto de esta página, se describe la sintaxis de los filtros de la API de Trace.

Ejemplos de filtros de solicitudes

En la siguiente lista, se describen los términos de 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 registro 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 unidad: s para segundos, ms para milisegundos o ns para nanosegundos. Si no hay un especificador de unidad, 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 registros cuyo número de 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 atajo para la prueba de etiquetas /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Esta sintaxis es un atajo para la prueba de etiquetas +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Esta sintaxis es un atajo para la prueba de etiquetas /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Esta sintaxis es un atajo para la prueba de etiquetas +/http/url:[VALUE_EXACT].

Ejemplos de búsquedas de intervalos raíz

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

En la siguiente lista, se muestran algunos términos de búsqueda que solo abarcan el 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].

Puedes personalizar aún más tu búsqueda creando una consulta con términos combinados. Por ejemplo:

+^url:/main /images method:200

Coincide con los registros 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

En las siguientes secciones, se describe cómo resolver problemas habituales con los filtros de registro.

Rendimiento lento

Si tu filtro de registro es complicado, tardará más en ejecutarse y podría agotarse el tiempo de espera. Para mejorar el rendimiento, simplifica el filtro.

Sin resultados

Si el filtro no devuelve ningún registro, verifica lo siguiente:

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

  • Asegúrate de que las mayúsculas y minúsculas, y la ortografía de todas las palabras del filtro sean correctas. Por ejemplo, si escribes mal una palabra clave, como method:GET, el filtro se interpretará como label:method:GET, que no coincide con ningún registro.

  • Para probar los términos del filtro uno a la vez, ve al método de la API de list y, luego, usa el Explorador de APIs. Si uno de los términos no devuelve resultados, es posible que ese término sea el motivo por el que no se devuelven datos.

    El Explorador de APIs está abierto cuando la página muestra un panel titulado Prueba este método. Si es necesario, haz clic en Probar, lo que abrirá el Explorador de APIs.