Consultas en ClickHouse CloudLos datos de esta tabla del sistema se almacenan localmente en cada nodo de ClickHouse Cloud. Por lo tanto, para obtener una vista completa de todos los datos, es necesario usar la función
clusterAllReplicas. Consulta aquí para más detalles.Descripción
addressToLine, addressToLineWithInlines, addressToSymbol y demangle.
Columnas
hostname(LowCardinality(String)) — Nombre de host del servidor que ejecuta la consulta.event_date(Date) — Fecha en que se realizó el muestreo.event_time(DateTime) — Marca temporal del momento en que se realizó el muestreo.event_time_microseconds(DateTime64(6)) — Marca temporal del momento del muestreo con precisión de microsegundos.timestamp_ns(UInt64) — Marca temporal del instante de muestreo en nanosegundos.revision(UInt32) — revisión de compilación del servidor ClickHouse. Al conectarse al servidor medianteclickhouse-client, verá una cadena similar aConnected to ClickHouse server version 19.18.1.. Este campo contiene larevision, pero no laversiondel servidor.trace_type(Enum8(‘Real’ = 0, ‘CPU’ = 1, ‘Memory’ = 2, ‘MemorySample’ = 3, ‘MemoryPeak’ = 4, ‘ProfileEvent’ = 5, ‘JemallocSample’ = 6, ‘MemoryAllocatedWithoutCheck’ = 7, ‘Instrumentation’ = 8)) — Tipo de traza:Realrepresenta la recopilación de trazas de pila por tiempo de reloj.CPUrepresenta la recopilación de trazas de pila por tiempo de CPU.Memoryrepresenta la recopilación de asignaciones y liberaciones de memoria cuando la asignación de memoria supera la siguiente marca de agua.MemorySamplerepresenta la recopilación de asignaciones y liberaciones de memoria aleatorias.MemoryPeakrepresenta la recopilación de actualizaciones del uso máximo de memoria.ProfileEventrepresenta la recopilación de incrementos de eventos de perfil.JemallocSamplerepresenta la recopilación de muestras de jemalloc.MemoryAllocatedWithoutCheckrepresenta la recopilación de asignaciones significativas (>16MiB) que se realiza ignorando cualquier límite de memoria (solo para desarrolladores de ClickHouse).Instrumentationrepresenta las trazas recopiladas mediante la instrumentación realizada a través de XRay.cpu_id(UInt64) — identificador de la CPU.thread_id(UInt64) — Identificador de hilo.thread_name(LowCardinality(String)) — Nombre del hilo.query_id(String) — Identificador de consulta que puede usarse para obtener detalles sobre una consulta que estaba en ejecución a partir de la tabla del sistema query_log.trace(Array(UInt64)) — Traza de pila en el momento del muestreo. Cada elemento es una dirección de memoria virtual dentro del proceso del servidor de ClickHouse.size(Int64) — Para los tipos de traza Memory, MemorySample, MemoryAllocatedWithoutCheck o MemoryPeak, indica la cantidad de memoria asignada; para los demás tipos de traza, es 0.ptr(UInt64) — La dirección del fragmento asignado.memory_context(Enum8(‘Unknown’ = -1, ‘Global’ = 0, ‘User’ = 1, ‘Process’ = 2, ‘Thread’ = 3, ‘Max’ = 4)) — Contexto del rastreador de memoria (solo para Memory/MemoryPeak): el contextoUnknownno está definido para este tipo de traza.Globalrepresenta el contexto del servidor.Userrepresenta el contexto de usuario/merge.Processrepresenta el contexto del proceso (es decir, de la consulta).Threadrepresenta el contexto del hilo (el hilo de un proceso concreto).Maxes un valor especial que significa que el rastreador de memoria no está bloqueado (para la columna blocked_context).memory_blocked_context(Enum8(‘Unknown’ = -1, ‘Global’ = 0, ‘User’ = 1, ‘Process’ = 2, ‘Thread’ = 3, ‘Max’ = 4)) — Contexto en el que el rastreador de memoria está bloqueado (solo para desarrolladores de ClickHouse): el contextoUnknownno está definido para este trace_type.Globalrepresenta el contexto del servidor.Userrepresenta el contexto de usuario/merge.Processrepresenta el contexto del proceso (es decir, de la consulta).Threadrepresenta el contexto del hilo (el hilo de un proceso concreto).Maxes un valor especial que significa que el rastreador de memoria no está bloqueado (para la columna blocked_context).event(LowCardinality(String)) — Para la traza de tipo ProfileEvent, es el nombre del evento de perfil actualizado; para los demás tipos de traza, es una cadena vacía.increment(Int64) — Para el tipo de traza ProfileEvent, es la cantidad en que se incrementa el evento de perfil; para otros tipos de traza, es 0.symbols(Array(LowCardinality(String))) — Si la simbolización está habilitada, contiene nombres de símbolos demanglados, correspondientes altrace. La simbolización puede habilitarse o deshabilitarse en la opciónsymbolizedetrace_logdentro del archivo de configuración del servidor.lines(Array(LowCardinality(String))) — Si la simbolización está activada, contiene cadenas con nombres de archivo y números de línea correspondientes a latrace.function_id(Nullable(Int32)) — Para el tipo de trace Instrumentation, ID asignado a la función en la sección xray_instr_map del binario ELF.function_name(Nullable(String)) — Para las trazas de tipo Instrumentation, nombre de la función instrumentada.handler(Nullable(String)) — Para el tipo de traza Instrumentation, el handler de la función instrumentada.entry_type(Nullable(Enum8(‘Entry’ = 0, ‘Exit’ = 1))) — Para las trazas de tipo Instrumentation, indica si se trata de la entrada o salida de la función instrumentada.duration_nanoseconds(Nullable(UInt64)) — Para el tipo de trace Instrumentation, tiempo durante el cual la función estuvo en ejecución, en nanosegundos.
build_id— Alias de'E2EEB60ED9503BFFA825B628D480CCDC40B2D416'.
symbolize, dentro de trace_log, en el archivo de configuración del servidor.
Ejemplo
Conversión al formato Event Trace de Chrome
chrome_trace.sql:
trace.json que luego puedes importar en Perfetto o speedscope.
Véase también
- SYSTEM INSTRUMENT — Añade o elimina puntos de instrumentación.
- system.instrumentation — Inspecciona los puntos instrumentados.
- system.symbols — Inspecciona los símbolos para añadir puntos de instrumentación.