ClickHouse/docs/ru/operations/system-tables/query_views_log.md
2021-12-06 16:22:15 +03:00

7.9 KiB
Raw Blame History

system.query_views_log

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

Чтобы начать ведение журнала:

  1. Настройте параметры в разделе query_views_log.
  2. Включите настройку log_query_views=1.

Период сброса данных из буфера в памяти задается в параметре flush_interval_milliseconds в разделе настроек сервера query_views_log. Для принудительного сброса используйте запрос SYSTEM FLUSH LOGS.

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

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

Столбцы:

  • event_date (Date) — дата, когда произошло последнее событие с представлением.
  • event_time (DateTime) — дата и время завершения выполнения представления.
  • event_time_microseconds (DateTime) — дата и время завершения выполнения представления с точностью до микросекунд.
  • view_duration_ms (UInt64) — продолжительность выполнения представления (сумма его этапов) в миллисекундах.
  • initial_query_id (String) — идентификатор начального запроса (при распределённом выполнении запроса).
  • view_name (String) — имя представления.
  • view_uuid (UUID) — UUID представления.
  • view_type (Enum8) — тип представления. Возможные значения:
  • view_query (String) — запрос, выполняемый представлением.
  • view_target (String) — имя целевой таблицы представления.
  • read_rows (UInt64) — количество прочитанных строк.
  • read_bytes (UInt64) — количество прочитанных байт.
  • written_rows (UInt64) — количество записанных строк.
  • written_bytes (UInt64) — количество записанных байт.
  • peak_memory_usage (Int64) — максимальная разница между объемом выделенной и освобожденной памяти в контексте этого представления.
  • ProfileEvents (Map(String, UInt64)) — события профиля, которые измеряют различные показатели. Их описание можно найти в таблице system.events.
  • status (Enum8) — статус представления. Возможные значения:
    • 'QueryStart' = 1 — успешное начало выполнения представления. Не должно отображаться.
    • 'QueryFinish' = 2 — успешное завершение выполнения представления.
    • 'ExceptionBeforeStart' = 3 — исключение до начала выполнения представления.
    • 'ExceptionWhileProcessing' = 4 — исключение во время выполнения представления.
  • exception_code (Int32) — код исключения.
  • exception (String) — сообщение исключения.
  • stack_trace (String) — трассировка стека. Пустая строка, если запрос был успешно выполнен.

Пример

Запрос:

SELECT * FROM system.query_views_log LIMIT 1 \G;

Результат:

Row 1:
──────
event_date:              2021-06-22
event_time:              2021-06-22 13:23:07
event_time_microseconds: 2021-06-22 13:23:07.738221
view_duration_ms:        0
initial_query_id:        c3a1ac02-9cad-479b-af54-9e9c0a7afd70
view_name:               default.matview_inner
view_uuid:               00000000-0000-0000-0000-000000000000
view_type:               Materialized
view_query:              SELECT * FROM default.table_b
view_target:             default.`.inner.matview_inner`
read_rows:               4
read_bytes:              64
written_rows:            2
written_bytes:           32
peak_memory_usage:       4196188
ProfileEvents:           {'FileOpen':2,'WriteBufferFromFileDescriptorWrite':2,'WriteBufferFromFileDescriptorWriteBytes':187,'IOBufferAllocs':3,'IOBufferAllocBytes':3145773,'FunctionExecute':3,'DiskWriteElapsedMicroseconds':13,'InsertedRows':2,'InsertedBytes':16,'SelectedRows':4,'SelectedBytes':48,'ContextLock':16,'RWLockAcquiredReadLocks':1,'RealTimeMicroseconds':698,'SoftPageFaults':4,'OSReadChars':463}
status:                  QueryFinish
exception_code:          0
exception:
stack_trace:

См. также

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