我第一次安装了Flume。我正在使用hadoop-1.2.1和flume 1.6.0
我试着按照这个指南设置一个flume代理。
我执行了这个命令: $ bin/flume-ng agent -n $agent_name -c conf -f conf/flume-conf.properties.template
上面写着 log4j:ERROR setFile(null,true) call failed. java.io.FileNotFoundException: ./logs/flume.log (No such file or directory)
不是吗 flume.log
自动生成的文件?如果没有,如何纠正此错误?
3条答案
按热度按时间emeijp431#
您得到这个错误可能是因为您直接在控制台上运行命令,您必须首先转到flume中的bin并尝试在控制台上运行您的命令。
gpfsuwkq2#
试试这个:
第一行创建
logs
当前目录中的目录(如果它不存在)。第二个将目录的所有者设置为当前用户(您),以便flume-ng
以用户可以写入的方式运行。最后,请注意,这不是运行flume的推荐方法,只是一个快速的尝试。
q3aa05253#
正如@botond所说,您需要设置正确的权限。
但是,如果您在程序中运行flume,如supervisor或使用自定义脚本,则可能需要更改默认路径,因为它是相对于启动程序的。此路径在/path/to/apache-flume-1.6.0-bin/conf/log4j.properties中定义。在那里你可以换线
要使用您想要使用的绝对路径,您仍然需要正确的权限。