更改zookeeper的log4j.properties的路径

时间:2019-02-09 15:46:51

标签: apache-kafka apache-zookeeper

我想为Zookeeper更改log4j.properties文件的路径,因为我也想从中央配置文件夹中读取此配置文件,但是我没有找到任何有关该操作的信息。

这就是我启动Zookeeper的方式:

$1/bin/zkServer.sh start $2/zoo.cfg

其中

  • $ 1:已解压缩的zookeeper的主目录
  • $ 2:保存zookeeper配置文件

我现在要做的是一个愚蠢的解决方案:

  • 在启动zookeeper之前,我将此文件复制到zookeeper主目录:cp $2/log4j.properties $1/conf

是否有更好的方法来配置外部log4j.properties文件的使用?

1 个答案:

答案 0 :(得分:0)

在这里,我假设您使用提供的Zookeeper(及其脚本)

您需要在启动Zookeeper之前导出变量

这是默认设置

if [ "x$KAFKA_LOG4J_OPTS" = "x" ]; then
    export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$base_dir/../config/log4j.properties"
fi

所以,你需要做

export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:/path/to/your.properties"
zookeeper-server-start zoo.cfg &

最好将它们一起重构为systemctl服务