这些设置可在 system.settings 中查看,并根据 源代码 自动生成。
log_queries
类型
Bool
默认值
1
启用查询日志记录。
发送到 ClickHouse 且启用此设置的查询,会按照 query_log 服务器配置参数中的规则记录。
示例:
log_queries=1log_queries_cut_to_length
类型
UInt64
默认值
100000
如果查询长度超过指定阈值 (以字节为单位) ,则在写入 query log 时截断该查询。同时也会限制在普通文本日志中输出的查询长度。
log_queries_min_query_duration_ms
类型
Milliseconds
默认值
0
如果启用 (非零值) ,则耗时短于此设置值的查询不会被记录到日志中 (你可以将其视为 MySQL Slow Query Log 的 long_query_time) 。这也就意味着,你无法在以下表中找到这些查询:
system.query_logsystem.query_thread_log
只有以下类型的查询才会被记录到日志中:
-
QUERY_FINISH -
EXCEPTION_WHILE_PROCESSING -
Type: 毫秒
-
Default value: 0 (任意查询)
log_queries_min_type
类型
LogQueriesType
默认值
QUERY_START
记录到 query_log 的最小类型。
可能的值:
QUERY_START(=1)QUERY_FINISH(=2)EXCEPTION_BEFORE_START(=3)EXCEPTION_WHILE_PROCESSING(=4)
可用于限制哪些条目会写入 query_log。例如,如果你只关注错误,则可以使用 EXCEPTION_WHILE_PROCESSING:
log_queries_min_type='EXCEPTION_WHILE_PROCESSING'log_queries_probability
类型
Float
默认值
1
允许用户仅按指定概率,随机选择部分查询并将其写入 query_log、query_thread_log 和 query_views_log 系统表。这有助于在每秒查询量很大时降低负载。
可能的值:
- 0 — 查询不会记录到系统表中。
- 范围在 [0..1] 内的正浮点数。例如,如果该设置的值为
0.5,则大约一半的查询会记录到系统表中。 - 1 — 所有查询都会记录到系统表中。