跳到主要内容

在客户端捕获查询的服务器日志

·一分钟阅读
了解如何使用客户端设置 send_logs_level 在客户端级别捕获服务器日志,即使日志设置不同。

了解如何在客户端捕获查询的服务器日志。

客户端可以查看服务器日志 - 即使级别与服务器日志级别配置的不同 - 通过设置 send_logs_level 客户端设置。

例如,假设客户端运行

SET send_logs_level = 'trace';

即使服务器的日志级别设置为 info,客户端也会收到 trace 日志。

一个有用的场景是使用 send_logs_level 来监控将行插入到 Distributed 表中

  • 使用 SET send_logs_level = 'trace';clickhouse-client 中启用日志
  • 运行您的 INSERT 查询
  • 默认情况下,插入分布式表是异步的。数据写入磁盘上的本地缓冲区,然后在后台发送到远程服务器。
  • 日志将从参与查询处理的所有节点发送(分布式追踪)

要检查分布式插入的状态,请查看 system.distribution_queue。此表包含有关本地文件的信息,这些文件在队列中等待发送到分片。这些本地文件包含通过以异步模式将新数据插入 Distributed 表而创建的新 parts。