query_thread_log
包含有关执行查询的线程的信息,例如线程名称、线程开始时间、查询处理持续时间。
开始日志记录
- 在 query_thread_log 部分配置参数。
- 将 log_query_threads 设置为 1。
数据刷新周期在 query_thread_log 服务器设置部分的 flush_interval_milliseconds
参数中设置。 要强制刷新,请使用 SYSTEM FLUSH LOGS 查询。
ClickHouse 不会自动从表中删除数据。 有关更多详细信息,请参阅 简介。
您可以使用 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) — 操作系统线程 ID。master_thread_id
(UInt64) — 初始线程的初始操作系统 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 中找到。
示例
SELECT * FROM system.query_thread_log LIMIT 1 \G
Row 1:
──────
hostname: clickhouse.eu-central1.internal
event_date: 2020-09-11
event_time: 2020-09-11 10:08:17
event_time_microseconds: 2020-09-11 10:08:17.134042
query_start_time: 2020-09-11 10:08:17
query_start_time_microseconds: 2020-09-11 10:08:17.063150
query_duration_ms: 70
read_rows: 0
read_bytes: 0
written_rows: 1
written_bytes: 12
memory_usage: 4300844
peak_memory_usage: 4300844
thread_name: TCPHandler
thread_id: 638133
master_thread_id: 638133
query: INSERT INTO test1 VALUES
is_initial_query: 1
user: default
query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
address: ::ffff:127.0.0.1
port: 33452
initial_user: default
initial_query_id: 50a320fd-85a8-49b8-8761-98a86bcbacef
initial_address: ::ffff:127.0.0.1
initial_port: 33452
interface: 1
os_user: bharatnc
client_hostname: tower
client_name: ClickHouse
client_revision: 54437
client_version_major: 20
client_version_minor: 7
client_version_patch: 2
http_method: 0
http_user_agent:
quota_key:
revision: 54440
ProfileEvents: {'Query':1,'SelectQuery':1,'ReadCompressedBytes':36,'CompressedReadBufferBlocks':1,'CompressedReadBufferBytes':10,'IOBufferAllocs':1,'IOBufferAllocBytes':89,'ContextLock':15,'RWLockAcquiredReadLocks':1}
另请参阅
- system.query_log —
query_log
系统表的描述,其中包含有关查询执行的通用信息。 - system.query_views_log — 此表包含有关查询期间执行的每个视图的信息。