我正在尝试移动apachekafka的application/log4j日志(而不是数据日志)。这已经变得异常困难的研究,因为有许多日志相关的条款与Kafka。我打开了log4j.properties,发现日志被写入: ${kafka.logs.dir} 不过,我不知道在哪里换 kafka.logs.dir . 我们需要改变这个位置,因为我们的虚拟机磁盘空间不足。任何帮助都将不胜感激!
${kafka.logs.dir}
kafka.logs.dir
dauxcl2d1#
log4j日志目录必须通过以下jvm属性传递:
-Dkafka.logs.dir=/some/path
如果你用的是 kafka-server-start.sh 要开始你的经纪人,你可以直接导出 LOG_DIR 这将自动为您设置jvm属性
kafka-server-start.sh
LOG_DIR
3npbholx2#
一种方法是重写环境属性 LOG_DIR 在启动kafka服务器之前,例如在bash脚本中:
# !/bin/sh export LOG_DIR=/var/log/kafka echo 'Kafka application logs set to ' $LOG_DIR ./kafka_2.11-1.1.0/bin/kafka-server-start.sh -daemon /kafka_2.11-1.1.0/config/server.properties
也可以覆盖 log4j.properties 你自己看 kafka-server-start.sh (源代码段) 1.1.0 ):
log4j.properties
1.1.0
if [ "x$KAFKA_LOG4J_OPTS" = "x" ]; then export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$base_dir/../config/log4j.properties" fi
2条答案
按热度按时间dauxcl2d1#
log4j日志目录必须通过以下jvm属性传递:
如果你用的是
kafka-server-start.sh
要开始你的经纪人,你可以直接导出LOG_DIR
这将自动为您设置jvm属性3npbholx2#
一种方法是重写环境属性
LOG_DIR
在启动kafka服务器之前,例如在bash脚本中:也可以覆盖
log4j.properties
你自己看kafka-server-start.sh
(源代码段)1.1.0
):