跳到主要内容

为什么 ClickHouse 默认日志记录如此详细?

·2 分钟阅读
了解为什么 ClickHouse 开发者选择默认设置详细的日志记录级别。

详细日志记录

经常让新用户感到困惑的一件事是,即使在轻负载下,ClickHouse 也会生成大量的日志输出。

这是因为默认的日志记录级别,由于历史原因,是 trace(而不是其他数据库中默认的 warning)。

ClickHouse 开发者认为,万一出现问题,trace 可以提供很多洞察力。

另一方面,大量的日志记录意味着系统表 system.text_log 会很快被填满,需要在后台合并。

如果数据库运行稳定,用户可以重新配置日志级别,我们将在下面解释如何操作。

更改日志级别

可用的不同日志级别在此处有文档记录:这里

您需要编辑 ClickHouse 服务器配置文件 (/etc/clickhouse-server/config.xml) 以修改日志级别。

默认值是 trace,但您可以将其更改为所需的级别。请参阅下面的注释

<clickhouse>
<logger>
<!-- Possible levels [1]:

- none (turns off logging)
- fatal
- critical
- error
- warning
- notice
- information
- debug
- trace
- test (not for production usage)

[1]: https://github.com/pocoproject/poco/blob/poco-1.9.4-release/Foundation/include/Poco/Logger.h#L105-L114
-->
<level>trace</level>
... Rest of the configuration file
</clickhouse>