跳到主要内容
跳到主要内容

system.query_thread_log

在 ClickHouse Cloud 中查询

该系统表中的数据在 ClickHouse Cloud 的每个节点上本地保存。因此,要获得所有数据的完整视图,需要使用 clusterAllReplicas 函数。有关更多详细信息,请参见 here

包含有关执行查询的线程的信息,例如,线程名称、线程开始时间、查询处理持续时间。

要开始记录:

  1. query_thread_log 部分配置参数。
  2. log_query_threads 设置为 1。

数据的刷新周期在 query_thread_log 服务器设置部分的 flush_interval_milliseconds 参数中设置。要强制刷新,请使用 SYSTEM FLUSH LOGS 查询。

ClickHouse 不会自动删除表中的数据。有关更多详细信息,请参见 Introduction

您可以使用 log_queries_probability 设置来减少在 query_thread_log 表中注册的查询数量。

列:

  • hostname (LowCardinality(String)) — 执行查询的服务器的主机名。
  • event_date (Date) — 线程完成查询执行的日期。
  • event_time (DateTime) — 线程完成查询执行的日期和时间。
  • event_time_microseconds (DateTime) — 线程完成查询执行的日期和时间(微秒精度)。
  • query_start_time (DateTime) — 查询执行的开始时间。
  • query_start_time_microseconds (DateTime64) — 查询执行的开始时间(微秒精度)。
  • query_duration_ms (UInt64) — 查询执行的持续时间。
  • read_rows (UInt64) — 读取的行数。
  • read_bytes (UInt64) — 读取的字节数。
  • written_rows (UInt64) — 对于 INSERT 查询,写入的行数。对于其他查询,该列值为 0。
  • written_bytes (UInt64) — 对于 INSERT 查询,写入的字节数。对于其他查询,该列值为 0。
  • memory_usage (Int64) — 在该线程上下文中,已分配内存和已释放内存之间的差异。
  • peak_memory_usage (Int64) — 在该线程上下文中,已分配内存和已释放内存之间的最大差异。
  • thread_name (String) — 线程名称。
  • thread_id (UInt64) — OS 线程 ID。
  • master_thread_id (UInt64) — OS 初始线程的 ID。
  • query (String) — 查询字符串。
  • is_initial_query (UInt8) — 查询类型。可能的值:
    • 1 — 查询由客户端发起。
    • 0 — 查询由另一个查询发起以进行分布式查询执行。
  • user (String) — 发起当前查询的用户名称。
  • query_id (String) — 查询的 ID。
  • address (IPv6) — 用于发起查询的 IP 地址。
  • port (UInt16) — 用于发起查询的客户端端口。
  • initial_user (String) — 运行初始查询的用户名称(用于分布式查询执行)。
  • initial_query_id (String) — 初始查询的 ID(用于分布式查询执行)。
  • initial_address (IPv6) — 父查询发起时的 IP 地址。
  • initial_port (UInt16) — 用于发起父查询的客户端端口。
  • interface (UInt8) — 查询发起的接口。可能的值:
    • 1 — TCP。
    • 2 — HTTP。
  • os_user (String) — 运行 clickhouse-client 的操作系统用户名。
  • client_hostname (String) — 运行 clickhouse-client 或其他 TCP 客户端的客户端机器的主机名。
  • client_name (String) — clickhouse-client 或其他 TCP 客户端名称。
  • client_revision (UInt32) — clickhouse-client 或其他 TCP 客户端的修订版。
  • client_version_major (UInt32) — clickhouse-client 或其他 TCP 客户端的主版本号。
  • client_version_minor (UInt32) — clickhouse-client 或其他 TCP 客户端的次版本号。
  • client_version_patch (UInt32) — clickhouse-client 或其他 TCP 客户端版本的补丁组件。
  • http_method (UInt8) — 发起查询的 HTTP 方法。可能的值:
    • 0 — 查询是通过 TCP 接口发起的。
    • 1 — 使用了 GET 方法。
    • 2 — 使用了 POST 方法。
  • http_user_agent (String) — HTTP 请求中传递的 UserAgent 头。
  • quota_key (String) — 在 quotas 设置中指定的“配额密钥”(请参见 keyed)。
  • revision (UInt32) — ClickHouse 修订版。
  • ProfileEvents (Map(String, UInt64)) — 衡量该线程不同指标的 ProfileEvents。它们的描述可以在 system.events 表中找到。

示例

另请参阅