system.zookeeper_log
Описание
Эта таблица содержит информацию о параметрах запроса к серверу ZooKeeper и его ответе.
Для запросов заполняются только столбцы с параметрами запроса, а остальные столбцы заполняются значениями по умолчанию (0 или NULL). Когда приходит ответ, данные из ответа добавляются в другие столбцы.
Столбцы
hostname(LowCardinality(String)) — имя хоста сервера, выполняющего запрос.type(Enum8('Request' = 1, 'Response' = 2, 'Finalize' = 3)) — Тип события клиента ZooKeeper. Может принимать одно из следующих значений: Request — запрос отправлен, Response — ответ получен, Finalize — соединение потеряно, ответ не получен.event_date(Date) — дата, когда произошло событие.event_time(DateTime64(6)) — дата и время, когда произошло событие.thread_id(UInt64) — Идентификатор потока, выполнившего этот запрос.query_id(String) — Идентификатор запроса, в рамках которого был выполнен данный запрос.address(IPv6) — IP-адрес сервера ZooKeeper, использованный для выполнения запроса.port(UInt16) — Порт сервера ZooKeeper, использованного для выполнения запроса.session_id(Int64) — Идентификатор сеанса, который сервер ZooKeeper присваивает каждому соединению.duration_microseconds(UInt64) — Время, которое ZooKeeper затратил на выполнение запроса.xid(Int64) — Идентификатор запроса в рамках сеанса. Обычно это последовательный номер запроса. Он совпадает у строки запроса и соответствующей строки ответа/завершения.has_watch(UInt8) — Признак того, установлено ли наблюдение.op_num(Enum16('Close' = -11, 'Error' = -1, 'Watch' = 0, 'Create' = 1, 'Remove' = 2, 'Exists' = 3, 'Get' = 4, 'Set' = 5, 'GetACL' = 6, 'SetACL' = 7, 'SimpleList' = 8, 'Sync' = 9, 'Heartbeat' = 11, 'List' = 12, 'Check' = 13, 'Multi' = 14, 'Create2' = 15, 'Reconfig' = 16, 'CheckWatch' = 17, 'RemoveWatch' = 18, 'MultiRead' = 22, 'Auth' = 100, 'SetWatch' = 101, 'SetWatch2' = 105, 'AddWatch' = 106, 'FilteredList' = 500, 'CheckNotExists' = 501, 'CreateIfNotExists' = 502, 'RemoveRecursive' = 503, 'CheckStat' = 504, 'TryRemove' = 505, 'FilteredListWithStatsAndData' = 506, 'ListRecursive' = 507, 'SessionID' = 997)) — Тип запроса либо ответа.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(Enum8('ZNOWATCHER' = -121, 'ZNOTREADONLY' = -119, 'ZSESSIONMOVED' = -118, 'ZNOTHING' = -117, 'ZCLOSING' = -116, 'ZAUTHFAILED' = -115, 'ZINVALIDACL' = -114, 'ZINVALIDCALLBACK' = -113, 'ZSESSIONEXPIRED' = -112, 'ZNOTEMPTY' = -111, 'ZNODEEXISTS' = -110, 'ZNOCHILDRENFOREPHEMERALS' = -108, 'ZBADVERSION' = -103, 'ZNOAUTH' = -102, 'ZNONODE' = -101, 'ZAPIERROR' = -100, 'ZOUTOFMEMORY' = -10, 'ZINVALIDSTATE' = -9, 'ZBADARGUMENTS' = -8, 'ZOPERATIONTIMEOUT' = -7, 'ZUNIMPLEMENTED' = -6, 'ZMARSHALLINGERROR' = -5, 'ZCONNECTIONLOSS' = -4, 'ZDATAINCONSISTENCY' = -3, 'ZRUNTIMEINCONSISTENCY' = -2, 'ZSYSTEMERROR' = -1, 'ZOK' = 0))) — Код ошибки. Может принимать множество значений, здесь приведены лишь некоторые из них: ZOK — запрос успешно выполнен, ZCONNECTIONLOSS — соединение потеряно, ZOPERATIONTIMEOUT — истек таймаут выполнения запроса, ZSESSIONEXPIRED — срок действия сеанса истек, NULL — запрос завершен.watch_type(Nullable(Enum8('NOTWATCHING' = -2, 'SESSION' = -1, 'CREATED' = 1, 'DELETED' = 2, 'CHANGED' = 3, 'CHILD' = 4))) — Тип события наблюдения (для ответов с op_num = Watch), для остальных ответов: NULL.watch_state(Nullable(Enum16('AUTH_FAILED' = -113, 'EXPIRED_SESSION' = -112, 'CONNECTING' = 1, 'ASSOCIATING' = 2, 'CONNECTED' = 3, 'READONLY' = 5, 'NOTCONNECTED' = 999))) — Статус события наблюдения (для ответов с op_num = Watch), для остальных ответов — NULL.path_created(String) — путь к созданному узлу ZooKeeper (для ответов на запрос CREATE); он может отличаться от указанного пути, если узел создаётся как последовательный.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).
Пример
Запрос:
Результат: