Skip to main content

system.query_thread_log

Содержит информацию о потоках, которые выполняют запросы, например, имя потока, время его запуска, продолжительность обработки запроса.

Чтобы начать логирование:

  1. Настройте параметры query_thread_log в конфигурации сервера.
  2. Установите значение log_query_threads равным 1.

Интервал сброса данных в таблицу задаётся параметром flush_interval_milliseconds в разделе настроек сервера query_thread_log. Чтобы принудительно записать логи из буфера памяти в таблицу, используйте запрос SYSTEM FLUSH LOGS.

ClickHouse не удаляет данные из таблицы автоматически. Подробности в разделе Введение.

Чтобы уменьшить количество запросов, регистрирующихся в таблице query_thread_log, вы можете использовать настройку log_queries_probability.

Столбцы:

  • event_date (Date) — дата завершения выполнения запроса потоком.
  • event_time (DateTime) — дата и время завершения выполнения запроса потоком.
  • event_time_microseconds (DateTime) — дата и время завершения выполнения запроса потоком с точностью до микросекунд.
  • query_start_time (DateTime) — время начала обработки запроса.
  • query_start_time_microseconds (DateTime64) — время начала обработки запроса с точностью до микросекунд.
  • query_duration_ms (UInt64) — длительность обработки запроса в миллисекундах.
  • read_rows (UInt64) — количество прочитанных строк.
  • read_bytes (UInt64) — количество прочитанных байтов.
  • written_rows (UInt64) — количество записанных строк для запросов INSERT. Для других запросов, значение столбца 0.
  • written_bytes (UInt64) — объём записанных данных в байтах для запросов INSERT. Для других запросов, значение столбца 0.
  • memory_usage (Int64) — разница между выделенной и освобождённой памятью в контексте потока.
  • peak_memory_usage (Int64) — максимальная разница между выделенной и освобождённой памятью в контексте потока.
  • thread_name (String) — имя потока.
  • thread_id (UInt64) — tid (ID потока операционной системы).
  • master_thread_id (UInt64) — tid (ID потока операционной системы) главного потока.
  • query (String) — текст запроса.
  • is_initial_query (UInt8) — вид запроса. Возможные значения:
    • 1 — запрос был инициирован клиентом.
    • 0 — запрос был инициирован другим запросом при распределенном запросе.
  • user (String) — пользователь, запустивший текущий запрос.
  • query_id (String) — ID запроса.
  • address (IPv6) — IP адрес, с которого пришел запрос.
  • port (UInt16) — порт, с которого пришел запрос.
  • initial_user (String) — пользователь, запустивший первоначальный запрос (для распределенных запросов).
  • initial_query_id (String) — ID родительского запроса.
  • initial_address (IPv6) — IP адрес, с которого пришел родительский запрос.
  • initial_port (UInt16) — порт, пришел родительский запрос.
  • interface (UInt8) — интерфейс, с которого ушёл запрос. Возможные значения:
    • 1 — TCP.
    • 2 — HTTP.
  • os_user (String) — имя пользователя в OS, который запустил clickhouse-client.
  • client_hostname (String) — hostname клиентской машины, с которой присоединился clickhouse-client или другой TCP клиент.
  • client_name (String) — clickhouse-client или другой TCP клиент.
  • client_revision (UInt32) — ревизия clickhouse-client или другого TCP клиента.
  • client_version_major (UInt32) — старшая версия clickhouse-client или другого TCP клиента.
  • client_version_minor (UInt32) — младшая версия clickhouse-client или другого TCP клиента.
  • client_version_patch (UInt32) — патч clickhouse-client или другого TCP клиента.
  • http_method (UInt8) — HTTP метод, инициировавший запрос. Возможные значения:
    • 0 — запрос запущен с интерфейса TCP.
    • 1 — GET.
    • 2 — POST.
  • http_user_agent (String) — HTTP заголовок UserAgent.
  • quota_key (String) — «ключ квоты» из настроек квот (см. keyed).
  • revision (UInt32) — ревизия ClickHouse.
  • ProfileEvents (Map(String, UInt64)) — счетчики для изменения различных метрик для данного потока. Описание метрик можно получить из таблицы system.events.

Пример

 SELECT * FROM system.query_thread_log LIMIT 1 \G
Row 1:
──────
event_date: 2020-09-11
event_time: 2020-09-11 10:08:17
event_time_microseconds: 2020-09-11 10:08:17.134042
query_start_time: 2020-09-11 10:08:17
query_start_time_microseconds: 2020-09-11 10:08:17.063150
query_duration_ms: 70
read_rows: 0
read_bytes: 0
written_rows: 1
written_bytes: 12
memory_usage: 4300844
peak_memory_usage: 4300844
thread_name: TCPHandler
thread_id: 638133
master_thread_id: 638133
query: INSERT INTO test1 VALUES
is_initial_query: 1
user: default
query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
address: ::ffff:127.0.0.1
port: 33452
initial_user: default
initial_query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
initial_address: ::ffff:127.0.0.1
initial_port: 33452
interface: 1
os_user: bharatnc
client_hostname: tower
client_name: ClickHouse
client_revision: 54437
client_version_major: 20
client_version_minor: 7
client_version_patch: 2
http_method: 0
http_user_agent:
quota_key:
revision: 54440
ProfileEvents: {'Query':1,'SelectQuery':1,'ReadCompressedBytes':36,'CompressedReadBufferBlocks':1,'CompressedReadBufferBytes':10,'IOBufferAllocs':1,'IOBufferAllocBytes':89,'ContextLock':15,'RWLockAcquiredReadLocks':1}

Смотрите также

  • system.query_log — описание системной таблицы query_log, которая содержит общую информацию о выполненных запросах.
  • system.query_views_log — описание системной таблицы query_views_log, которая содержит информацию о всех представлениях, участвующих в выполненных запросах.