跳至主要内容

zookeeper_log

此表包含有关对 ZooKeeper 服务器的请求参数以及来自它的响应的信息。

对于请求,仅填写具有请求参数的列,其余列将填充默认值(0NULL)。 当响应到达时,响应中的数据将添加到其他列中。

具有请求参数的列

  • hostname (LowCardinality(String)) — 执行查询的服务器主机名。
  • type (Enum) — ZooKeeper 客户端中的事件类型。 可以具有以下值之一
    • Request — 请求已发送。
    • Response — 收到响应。
    • Finalize — 连接已丢失,未收到响应。
  • event_date (Date) — 事件发生的日期。
  • event_time (DateTime64) — 事件发生的日期和时间。
  • address (IPv6) — 用于发出请求的 ZooKeeper 服务器的 IP 地址。
  • port (UInt16) — 用于发出请求的 ZooKeeper 服务器的端口。
  • session_id (Int64) — ZooKeeper 服务器为每个连接设置的会话 ID。
  • xid (Int32) — 会话中请求的 ID。 这通常是按顺序的请求编号。 对于请求行和配对的 response/finalize 行,它是一样的。
  • has_watch (UInt8) — 请求是否已设置 watch
  • op_num (Enum) — 请求或响应的类型。
  • path (String) — 请求中指定的 ZooKeeper 节点的路径,如果请求不需要指定路径,则为空字符串。
  • data (String) — 写入 ZooKeeper 节点的数据(对于 SETCREATE 请求 — 请求要写入的内容,对于 GET 请求的响应 — 读取的内容)或空字符串。
  • is_ephemeral (UInt8) — ZooKeeper 节点是否作为 短暂的 创建。
  • is_sequential (UInt8) — ZooKeeper 节点是否作为 顺序的 创建。
  • version (Nullable(Int32)) — 执行时请求期望的 ZooKeeper 节点的版本。 这对于 CHECKSETREMOVE 请求受支持(如果请求不检查版本,则相关 -1,对于不支持版本检查的其他请求,则为 NULL)。
  • requests_size (UInt32) — 多请求中包含的请求数(这是一个由多个连续的普通请求组成的特殊请求,并且原子地执行它们)。 多请求中包含的所有请求都将具有相同的 xid
  • request_idx (UInt32) — 多请求中包含的请求数(对于多请求 — 0,然后按顺序从 1 开始)。

具有请求响应参数的列

  • zxid (Int64) — ZooKeeper 事务 ID。 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 请求的响应),如果节点作为 sequential 创建,则可能与 path 不同。
  • stat_czxid (Int64) — 导致此 ZooKeeper 节点创建的更改的 zxid
  • stat_mzxid (Int64) — 最后修改此 ZooKeeper 节点的更改的 zxid
  • stat_pzxid (Int64) — 最后修改此 ZooKeeper 节点的子节点的更改的事务 ID。
  • stat_version (Int32) — 此 ZooKeeper 节点的数据更改次数。
  • stat_cversion (Int32) — 此 ZooKeeper 节点的子节点的更改次数。
  • stat_dataLength (Int32) — 此 ZooKeeper 节点的 data 字段的长度。
  • stat_numChildren (Int32) — 此 ZooKeeper 节点的子节点数。
  • children (Array(String)) — 子 ZooKeeper 节点的列表(对于 LIST 请求的响应)。

示例

查询

SELECT * FROM system.zookeeper_log WHERE (session_id = '106662742089334927') AND (xid = '10858') FORMAT Vertical;

结果

Row 1:
──────
hostname: clickhouse.eu-central1.internal
type: Request
event_date: 2021-08-09
event_time: 2021-08-09 21:38:30.291792
address: ::
port: 2181
session_id: 106662742089334927
xid: 10858
has_watch: 1
op_num: List
path: /clickhouse/task_queue/ddl
data:
is_ephemeral: 0
is_sequential: 0
version: ᴺᵁᴸᴸ
requests_size: 0
request_idx: 0
zxid: 0
error: ᴺᵁᴸᴸ
watch_type: ᴺᵁᴸᴸ
watch_state: ᴺᵁᴸᴸ
path_created:
stat_czxid: 0
stat_mzxid: 0
stat_pzxid: 0
stat_version: 0
stat_cversion: 0
stat_dataLength: 0
stat_numChildren: 0
children: []

Row 2:
──────
type: Response
event_date: 2021-08-09
event_time: 2021-08-09 21:38:30.292086
address: ::
port: 2181
session_id: 106662742089334927
xid: 10858
has_watch: 1
op_num: List
path: /clickhouse/task_queue/ddl
data:
is_ephemeral: 0
is_sequential: 0
version: ᴺᵁᴸᴸ
requests_size: 0
request_idx: 0
zxid: 16926267
error: ZOK
watch_type: ᴺᵁᴸᴸ
watch_state: ᴺᵁᴸᴸ
path_created:
stat_czxid: 16925469
stat_mzxid: 16925469
stat_pzxid: 16926179
stat_version: 0
stat_cversion: 7
stat_dataLength: 0
stat_numChildren: 7
children: ['query-0000000006','query-0000000005','query-0000000004','query-0000000003','query-0000000002','query-0000000001','query-0000000000']

另请参阅