如何仅为慢速查询启用 DEBUG 日志记录?

How do I enable DEBUG logging just for slow queries?

调试级别设置为 INFO,我想启用对设置了 slow_query_log_timeout_in_ms 的慢速 运行 查询的日志记录。如果将调试级别设置为 DEBUG,它将记录 运行 比 slow_query_log_timeout_in_ms 长的查询,但同时会记录许多其他调试信息。 除了慢速 运行 查询之外,我不需要任何调试信息,是否可以只启用慢速 运行 查询的日志记录,而在调试级别没有其他任何东西?

[cassandra@localhost ~]$ nodetool getlogginglevels
Logger Name                                        Log Level
...
org.apache.cassandra                                    INFO

自 Cassandra 2.2 起默认启用调试日志记录并转到 debug.log。这是为了减少进入 system.log.

的“噪音”

可以通过删除 conf/logback.xml 中的附加程序来禁用调试日志记录,但不推荐。如果您正在调查一个问题或需要了解您的系统正在发生什么,调试日志是至关重要的,因此建议始终打开它。

如果您想违反最佳实践,请禁用调试日志记录并将 class org.apache.cassandra.db.monitoring 的日志记录级别设置为 DEBUG。请注意,这不是永久性的,每次重新启动 Cassandra 时都需要设置它。干杯!