system.query_views_log
Содержит информацию о зависимых представлениях, выполняемых при выполнении запроса, например, тип представления или время выполнения.
Чтобы начать ведение журнала:
- Настройте параметры в разделе query_views_log.
- Включите настройку 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) — тип представления. Возможные значения:'Default' = 1
— обычные представления. Не должно появляться в этом журнале.'Materialized' = 2
— материализованные представления.'Live' = 3
— live представления.
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
, которая содержит информацию о каждом потоке выполнения запроса.