system.zookeeper_log
Эта таблица содержит информацию о параметрах запроса к серверу ZooKeeper и ответе от него.
Для запросов заполняются только колонки с параметрами запроса, остальные колонки заполняются значениями по умолчанию (0 или NULL). Когда приходит ответ, данные из ответа добавляются в другие колонки.
Колонки с параметрами запроса:
hostname(LowCardinality(String)) — Имя хоста сервера, выполняющего запрос.type(Enum) — Тип события в клиенте ZooKeeper. Может принимать одно из следующих значений:Request— Запрос был отправлен.Response— Ответ был получен.Finalize— Соединение потеряно, ответ не был получен.
event_date(Date) — Дата, когда произошло событие.event_time(DateTime64) — Дата и время, когда произошло событие.address(IPv6) — IP-адрес сервера ZooKeeper, который использовался для выполнения запроса.port(UInt16) — Порт сервера ZooKeeper, который использовался для выполнения запроса.session_id(Int64) — Идентификатор сессии, который сервер ZooKeeper устанавливает для каждого соединения.xid(Int32) — Идентификатор запроса внутри сессии. Обычно это последовательный номер запроса. Он одинаков для строки запроса и соответствующей строкиresponse/finalize.has_watch(UInt8) — Запрос, установлен ли watch.op_num(Enum) — Тип запроса или ответа.path(String) — Путь к узлу ZooKeeper, указанному в запросе, или пустая строка, если запрос не требует указания пути.data(String) — Данные, записанные в узел ZooKeeper (для запросовSETиCREATE— то, что запрос хотел записать, для ответа на запросGET— то, что было прочитано) или пустая строка.is_ephemeral(UInt8) — Создается ли узел ZooKeeper как эпемеральный.is_sequential(UInt8) — Создается ли узел ZooKeeper как последовательный.version(Nullable(Int32)) — Версия узла ZooKeeper, которую ожидает запрос при выполнении. Это поддерживается для запросовCHECK,SET,REMOVE(актуально-1, если запрос не проверяет версию, илиNULLдля других запросов, не поддерживающих проверку версии).requests_size(UInt32) — Количество запросов, включенных в мульти-запрос (это специальный запрос, состоящий из нескольких последовательных обычных запросов и выполняющихся атомарно). Все запросы, включенные в мульти-запрос, будут иметь один и тот жеxid.request_idx(UInt32) — Номер запроса, включенного в мульти-запрос (для мульти-запроса —0, затем по порядку от1).
Колонки с параметрами ответа на запрос:
zxid(Int64) — Идентификатор транзакции ZooKeeper. Серийный номер, выданный сервером ZooKeeper в ответ на успешно выполненный запрос (0, если запрос не был выполнен/возникла ошибка/клиент не знает, был ли запрос выполнен).error(Nullable(Enum)) — Код ошибки. Может принимать много значений, вот некоторые из них:ZOK— Запрос был выполнен успешно.ZCONNECTIONLOSS— Соединение было потеряно.ZOPERATIONTIMEOUT— Время выполнения запроса истекло.ZSESSIONEXPIRED— Сессия истекла.NULL— Запрос завершен.
watch_type(Nullable(Enum)) — Тип событияwatch(для ответов сop_num=Watch), для остальных ответов:NULL.watch_state(Nullable(Enum)) — Статус событияwatch(для ответов сop_num=Watch), для остальных ответов:NULL.path_created(String) — Путь к созданному узлу ZooKeeper (для ответов на запросCREATE), может отличаться отpath, если узел создан какпоследовательный.stat_czxid(Int64) —zxidизменения, которое вызвало создание этого узла ZooKeeper.stat_mzxid(Int64) —zxidизменения, которое последний раз модифицировало этот узел ZooKeeper.stat_pzxid(Int64) — Идентификатор транзакции изменения, которое последний раз изменило детей этого узла ZooKeeper.stat_version(Int32) — Количество изменений данных этого узла ZooKeeper.stat_cversion(Int32) — Количество изменений детей этого узла ZooKeeper.stat_dataLength(Int32) — Длина поля данных этого узла ZooKeeper.stat_numChildren(Int32) — Количество детей этого узла ZooKeeper.children(Array(String)) — Список дочерних узлов ZooKeeper (для ответов на запросLIST).
Пример
Запрос:
Результат:
См. также