如何从Kafka Connect等日志查询active controller变更的精确时间
Kafka Active Controller切换精确时间查询来源
- Kafka Broker核心日志
优先查询各Broker节点的server.log(默认路径为/var/log/kafka/server.log),搜索以下关键词即可找到对应事件:ActiveController、Controller elected、New controller is
典型日志示例:[2024-05-20 14:32:17,289] INFO [Controller 02] Controller 02 elected as the new controller (kafka.controller.KafkaController)
日志行头部的时间戳即为切换的精确时间,集群内所有Broker都会记录该选举事件。 - 集群元数据存储层
- 若为ZooKeeper协调模式:通过ZooKeeper客户端执行
get /controller,返回结果中的timestamp字段即为当前Active Controller的选举(切换)时间。 - 若为KRaft模式:查询Controller Quorum节点的日志,搜索
QuorumController、Leader election complete关键词,对应日志的时间戳即为切换时间。
- 若为ZooKeeper协调模式:通过ZooKeeper客户端执行
- Confluent Control Center日志
查询Control Center的运行日志(默认路径为/var/log/confluent/control-center/control-center.log),搜索Active controller changed相关记录,日志中会同时记录旧、新Controller ID和对应的变更时间,和UI展示的变更事件完全对应。 - 监控系统指标
若集群部署了JMX监控,可查询kafka.controller:type=KafkaController,name=ControllerId指标的突变时间,即为Controller切换的发生时间,Prometheus、Grafana等监控工具可直接展示该时间点。 - Kafka Connect日志(参考)
若Connect服务配置了集群元数据变更监听,可在Connect运行日志中搜索Broker metadata updated相关记录,其中提及Controller ID变更的日志也可作为辅助参考。
内容的提问来源于stack exchange,提问作者Anilkumar Bathula
相关产品推荐
相关产品推荐

