Saltar al contenido principal
Puede usar las funciones descritas en este capítulo para realizar la introspección de ELF y DWARF para el perfilado de consultas.
Estas funciones son lentas y pueden plantear implicaciones de seguridad.
Para que las funciones de introspección funcionen correctamente:
  • Instale el paquete clickhouse-common-static-dbg.
  • Establezca el ajuste allow_introspection_functions en 1. Por motivos de seguridad, las funciones de introspección están deshabilitadas de forma predeterminada.
ClickHouse guarda los informes del perfilador en la tabla del sistema trace_log. Asegúrese de que la tabla y el perfilador estén configurados correctamente.

addressToLine

Introducido en: v20.1.0 Convierte una dirección de memoria virtual dentro del proceso del servidor de ClickHouse en un nombre de archivo y un número de línea del código fuente de ClickHouse.
Esta función es lenta y puede tener implicaciones de seguridad.
Para habilitar esta función de introspección: Sintaxis
Argumentos
  • address_of_binary_instruction — Dirección de la instrucción en un proceso en ejecución. UInt64
Valor devuelto Devuelve el nombre de un archivo de código fuente y el número de línea, separados por dos puntos; por ejemplo, /build/obj-x86_64-linux-gnu/../src/Common/ThreadPool.cpp:199. Devuelve el nombre de un binario si no se encuentra información de depuración; en cambio, devuelve una cadena vacía si la dirección no es válida. String Ejemplos Selección de la primera cadena de la tabla del sistema trace_log
Query
Response
Obtención del nombre del archivo de código fuente y del número de línea para una sola dirección
Query
Response
Aplicación de la función a toda la traza de pila
Query
Response

addressToLineWithInlines

Introducido en: v22.2.0 Similar a addressToLine, pero devuelve un Array con todas las funciones en línea. Por ello, es más lenta que addressToLine. Para habilitar esta función de introspección: Sintaxis
Argumentos
  • address_of_binary_instruction — La dirección de una instrucción en un proceso en ejecución. UInt64
Valor devuelto Devuelve un array cuyo primer elemento es el nombre del archivo de código fuente y el número de línea, separados por dos puntos. El segundo, tercer, etc. elemento enumera los nombres de archivo del código fuente, los números de línea y los nombres de las funciones inline. Si no se encuentra información de depuración, se devuelve un array con un único elemento igual al nombre del binario; en cambio, si la dirección no es válida, se devuelve un array vacío. Array(String) Ejemplos Aplicación de la función a una dirección
Query
Response
Aplicación de la función a toda la traza de pila
Query
Response

addressToSymbol

Introducido en: v20.1.0 Convierte una dirección de memoria virtual dentro del proceso del servidor de ClickHouse en un símbolo de los archivos objeto de ClickHouse. Sintaxis
Argumentos
  • address_of_binary_instruction — Dirección de una instrucción en un proceso en ejecución. UInt64
Valor devuelto Devuelve el símbolo de los archivos de objetos de ClickHouse o una cadena vacía si la dirección no es válida. String Ejemplos Selección de la primera cadena de texto de la tabla del sistema trace_log
Query
Response
Obtener el símbolo de una sola dirección
Query
Response
Aplicar la función a la traza de pila completa
Query
Response

demangle

Introducido en: v20.1.0 Convierte un símbolo en el nombre de una función de C++. Normalmente, la función addressToSymbol devuelve el símbolo. Sintaxis
Argumentos
  • symbol — Símbolo de un archivo objeto. String
Valor devuelto Devuelve el nombre de la función de C++, o una cadena vacía si el símbolo no es válido. String Ejemplos Seleccionar la primera cadena de la tabla del sistema trace_log
Query
Response
Obtener el nombre de la función para una sola dirección
Query
Response
Aplicar la función a toda la traza de pila
Query
Response

isMergeTreePartCoveredBy

Introducido en: v25.6.0 Función que comprueba si la parte del primer argumento queda cubierta por la parte del segundo argumento. Sintaxis
Argumentos
  • nested_part — Nombre de la parte anidada esperada. String
  • covering_part — Nombre de la parte contenedora esperada. String
Valor devuelto Devuelve 1 si la cubre; 0 en caso contrario. UInt8 Ejemplos Ejemplo básico
Query
Response

logTrace

Introducido en: v20.12.0 Emite un mensaje de traza en el registro del servidor por cada bloque. Sintaxis
Argumentos
  • message — Mensaje que se emite al log del servidor. const String
Valor devuelto Devuelve siempre 0. UInt8 Ejemplos Ejemplo básico
Query
Response

mergeTreePartInfo

Introducido en: v25.6.0 Función que ayuda a extraer los valores relevantes del nombre de la parte de MergeTree. Sintaxis
Argumentos
  • part_name — Nombre de la parte que se va a descomprimir. String
Valor devuelto Devuelve una Tuple con subcolumnas: partition_id, min_block, max_block, level, mutation. Tuple Ejemplos Ejemplo básico
Query
Response

tid

Introducido en: v20.12.0 Devuelve el ID del hilo en el que se procesa el bloque actual. Sintaxis
Argumentos
  • Ninguno.
Valor devuelto Devuelve el identificador del hilo actual. UInt64 Ejemplos Ejemplo de uso
Query
Response
Última modificación el 2 de julio de 2026