> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Tabla del sistema que contiene los puntos de instrumentación

# system.instrumentation

<Info>
  **Consultas en ClickHouse Cloud**

  Los 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í](/es/reference/system-tables/overview#system-tables-in-clickhouse-cloud) para más detalles.
</Info>

## Descripción

Contiene los puntos de instrumentación que utilizan la función XRay de LLVM.

**Disponibilidad**

`system.instrumentation` solo está presente en builds de ClickHouse compiladas con soporte para LLVM XRay (`USE_XRAY`). En builds que no lo incluyen, la tabla no existe y las consultas sobre ella fallarán con `UNKNOWN_TABLE`. Puede comprobar si su build lo tiene habilitado con:

```sql theme={null}
SELECT value FROM system.build_options WHERE name = 'USE_XRAY';
```

## Columnas

* `id` ([UInt32](/es/reference/data-types/int-uint)) — ID del punto de instrumentación
* `function_id` ([Int32](/es/reference/data-types/int-uint)) — ID asignado a la función en la sección xray\_instr\_map del binario ELF.
* `function_name` ([LowCardinality(String)](/es/reference/data-types/lowcardinality)) — Nombre utilizado para instrumentar la función.
* `handler` ([LowCardinality(String)](/es/reference/data-types/lowcardinality)) — Handler aplicado a los puntos de instrumentación de la función.
* `entry_type` ([Enum8('Entry' = 0, 'Exit' = 1, 'EntryAndExit' = 2)](/es/reference/data-types/enum)) — Tipo de entrada del parche.
* `symbol` ([LowCardinality(String)](/es/reference/data-types/lowcardinality)) — Nombre completo del símbolo, desmangleado.
* `arguments` ([Array(Dynamic)](/es/reference/data-types/array)) — Argumentos de la llamada al handler.

## Ejemplo

```sql theme={null}
SELECT * FROM system.instrumentation FORMAT Vertical;
```

```text theme={null}
Row 1:
──────
id:            0
function_id:   231280
function_name: QueryMetricLog::startQuery
handler:       log
entry_type:    Entry
symbol:        DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments:     ['test']

Row 2:
──────
id:            1
function_id:   231280
function_name: QueryMetricLog::startQuery
handler:       profile
entry_type:    EntryAndExit
symbol:        DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments:     []

Row 3:
──────
id:            2
function_id:   231280
function_name: QueryMetricLog::startQuery
handler:       sleep
entry_type:    Exit
symbol:        DB::QueryMetricLog::startQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>>, unsigned long)
arguments:     [0.3]

3 rows in set. Elapsed: 0.302 sec.
```

## Véase también

* [SYSTEM INSTRUMENT](/es/reference/statements/system#instrument) — Añada o elimine puntos de instrumentación.
* [system.trace\_log](/es/reference/system-tables/trace_log) — Inspeccione el registro de perfilado.
* [system.symbols](/es/reference/system-tables/symbols) — Inspeccione los símbolos para añadir puntos de instrumentación.
