在 Linux 上查看 Kafka 日志,通常分 Kafka 自身运行日志 和 Kafka 消息/数据日志 两类,下面按常见场景说明。
这是 Kafka 进程启动、报错、GC 等日志。
$KAFKA_HOME/logs/
常见文件:
server.log:核心日志controller.log:Controller 相关state-change.log:状态变更kafkaServer-gc.log:GC 日志查看示例:
tail -f $KAFKA_HOME/logs/server.log
在 config/server.properties 或 config/log4j.properties 中:
log.dirs=/data/kafka-logs
运行日志由 log4j.properties 控制:
log4j.appender.kafkaAppender.File=/opt/kafka/logs/server.log
这是生产/消费的消息文件。
log.dirs=/data/kafka-logs
目录结构:
/data/kafka-logs/
├── topic-0/
│ ├── 00000000000000000000.log
│ ├── 00000000000000000000.index
│ └── 00000000000000000000.timeindex
消息是二进制,不能直接 cat:
cat /data/kafka-logs/topic-0/00000000000000000000.log
kafka-console-consumer.sh \
--bootstrap-server localhost:9092 \
--topic your_topic \
--from-beginning
journalctl -u kafka -f
ps -ef | grep kafka
# 看最新错误
tail -n 200 $KAFKA_HOME/logs/server.log | grep ERROR
# 看 broker 是否存活
kafka-broker-api-versions.sh --bootstrap-server localhost:9092
如果你能告诉我:
我可以给你更精确的命令。