En esta página, se describen los detalles específicos de la exportación de seguimientos de Cloud Trace a BigQuery.
Esquema
El esquema de tu tabla que almacena datos de seguimiento está determinado por la definición de la API de Trace V2 del intervalo.
Trace hace un seguimiento de las columnas de la tabla y aplica parches en la tabla cuando un intervalo nuevo contiene campos que no se pueden almacenar en la tabla existente. Se requiere una operación de parche cuando un intervalo de llegada contiene entradas que no se vieron antes. Por ejemplo, si un intervalo que llega contiene un atributo nuevo, la tabla tiene un parche.
Retención de datos
Debes configurar las políticas de retención de datos de tus tablas de BigQuery. Para obtener información sobre cómo administrar tablas y datos de tablas, consulta Trabaja con tablas.
Tipo de tabla
Si configuras un receptor para que exporte seguimientos a BigQuery, Trace configura una tabla particionada por tiempo de transferencia. Para obtener información detallada sobre las tablas particionadas, incluido cómo crear, administrar, consultar y borrar estas tablas, consulta Trabaja con tablas particionadas.
Consultas de muestra
En las siguientes consultas, [DATASET] es el nombre del conjunto de datos de BigQuery y [MY_TABLE] es el nombre de una tabla en ese conjunto de datos.
Para mostrar todas las columnas en la tabla de la fecha del 20 de noviembre de 2019 y, a la vez, limitar el resultado a 10 filas, ejecuta la consulta:
SELECT * FROM `[DATASET].[MY_TABLE]` WHERE DATE(_PARTITIONTIME) = "2019-11-20" LIMIT 10
Para mostrar todas las particiones disponibles en la tabla, ejecuta la consulta siguiente:
SELECT _PARTITIONTIME as pt FROM `[DATASET].[MY_TABLE]` GROUP BY 1
Consulta de HipsterShop
HipsterShop es una aplicación de demostración disponible en GitHub.
La siguiente es una consulta de muestra que ilustra cómo puedes usar las consultas de BigQuery para recopilar información que no está disponible fácilmente con la interfaz de Trace.
La consulta interna encuentra todos los intervalos que coinciden con la expresión regular especificada y que se recibieron el 2 de diciembre de 2019. La consulta externa selecciona los siguientes elementos para mostrarlos:
- name
- la cantidad de intervalos que coinciden
- la cantidad de ID de seguimiento distintos
- Cuartiles número 50, 90 y 99
- Ruta HTTP
- Mensaje de error
También muestra los resultados ordenados según los recuentos de seguimiento:
SELECT t0.span.displayName.value, count(t0.span.spanId) as spanCount, count(distinct traceId) as traceCount, APPROX_QUANTILES(milliseconds, 100)[OFFSET(50)] as p50, APPROX_QUANTILES(milliseconds, 100)[OFFSET(95)] as p95, APPROX_QUANTILES(milliseconds, 100)[OFFSET(99)] as p99, t0.span.attributes.attributeMap._http_path, t0.span.attributes.attributeMap._error_message FROM ( SELECT *, REGEXP_EXTRACT(span.name, r"./traces/([a-f0-9]+).") as traceId, TIMESTAMP_DIFF(span.endTime,span.startTime, MILLISECOND) as milliseconds FROM `hipstershop-demo.Hipstershop_trace_export.cloud_trace` WHERE DATE(_PARTITIONTIME) = "2019-12-02") AS t0 WHERE t0.span.parentSpanId is NULL GROUP by t0.span.displayName.value, t0.span.attributes.attributeMap._http_path,t0.span.attributes.attributeMap._error_message ORDER BY traceCount DESC LIMIT 1000
Para una instalación en particular de esta aplicación, el resultado de la consulta es el siguiente:
Ve datos de seguimiento
Para ver tus datos de seguimiento con la IU web de BigQuery, selecciona una tabla que contenga tus seguimientos exportados.