
监控
Kafka
|
177
可以考虑使用两种日志。第一种是
kafka.controller,可以将它设置为 INFO 级别。这个日志
用于记录集群控制器的信息。在任何时候,集群里都只有一个控制器,因此只有一个
broker
会使用这个日志。日志里包含了主题的创建和修改操作、
broker
状态的变更,以及集群的活
动,比如默认的副本选举和分区的移动。另一个日志是 kafka.server.ClientQuotaManager,
也可以将它设置为 INFO 级别。这个日志用于记录与生产和消费配额活动相关的信息。因为
这些信息很有用,所以最好不要把它们记录在
broker
的主日志文件里。
在调试问题时,还有一些日志也很有用,比如
kafka.request.logger,可以将它设置为
DEBUG 或 TRACE 级别。这个日志包含了发送给
broker
的每一个请求的详细信息。如果日志
级别被设置为 DEBUG,那么它将包含连接端点、请求时间和概要信息。如果日志级别被设
置为 TRACE,那么它将包含主题和分区的信息,以及除消息体之外的所有与请求相关的信
息。不管被设置成什么级别,这个日志会产生大量的数据,所以如果不是出于调试的目
的,不建议启用这个日志。
日志压缩线程的运行状态也是一个有用的信息。不过,这些线程并没有单独的度量指标,
一个分区的压缩失败有可能造成压缩线程的整体崩溃,而且是悄然发生的。启用 kafka.
log.LogCleaner、kafka.log.Cleaner 和 kafka.log.LogCleanerManager ...