在flume.conf中获取变量

时间:2015-08-27 11:55:17

标签: flume flume-ng

我在flume.con文件中声明了一个flume代理。 来源是RabbitMQ,虽然这不是那么相关。 问题是我需要从那里取出凭证到另一个文件。 我看到了这样做的方法是在flume-env.sh中,我把它放在这里:

export RABBIT_USER=user1

在flume.conf中,我试图以这种方式获得价值:

agent1.sources.rabbitmq-source1.user = $RABBIT_USER

但是当我运行代理时,变量不会被其先前在flume-env.sh中设置的值替换,因此,代理不会连接到Rabbit。

export RABBIT_USER=user1句子有效,因为如果我在flume-ng脚本中回显变量,则值user1会正确显示在控制台上。

我尝试了几种方法来访问flume.con

中的变量

带花括号,$花括号内,$ out ....

没办法。

有没有办法在flume.conf中正确获取变量? 我在互联网上做了很多测试和调查而没有结果。

提前致谢

1 个答案:

答案 0 :(得分:2)

1.8版本中添加了环境变量支持。但它需要设置一个运行代理程序实例的特殊属性

flume-ng agent  --conf conf/ -f ./conf/flume.conf -n a1  -DpropertiesImplementation=org.apache.flume.node.EnvVarResolverProperties

参考: