【问题标题】:File not found exception while starting Flume agent启动 Flume 代理时找不到文件异常
【发布时间】:2015-06-03 12:51:45
【问题描述】:

我是第一次安装 Flume。我正在使用 hadoop-1.2.1 和水槽 1.6.0

我尝试通过关注this guide 来设置水槽代理。

我执行了这个命令:$ 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文件不是自动生成的吗?如果没有,我该如何纠正这个错误?

【问题讨论】:

  • 检查目录的权限。如果需要,创建一个空的 flume.log 文件。
  • 在哪里创建该日志文件?
  • 在执行脚本的目录中

标签: hadoop filenotfoundexception flume flume-ng


【解决方案1】:

试试这个:

mkdir ./logs
sudo chown `whoami` ./logs
bin/flume-ng agent -n $agent_name -c conf -f conf/flume-conf.properties.template

如果logs 目录尚不存在,则第一行会在当前目录中创建它。第二个将该目录的所有者设置为当前用户(您),以便以您的用户身份运行的flume-ng 可以对其进行写入。

最后,请注意,这不是运行 Flume 的推荐方式,只是快速尝试一下。

【讨论】:

    【解决方案2】:

    您收到此错误可能是因为您直接在控制台上运行命令,您必须首先进入水槽中的 bin 并尝试在控制台上运行您的命令。

    【讨论】:

      【解决方案3】:

      正如@Botond 所说,您需要设置正确的权限。

      但是,如果您在程序中运行 Flume,例如主管或使用自定义脚本,您可能需要更改默认路径,因为它是相对于启动器的。 此路径在您的 /path/to/apache-flume-1.6.0-bin/conf/log4j.properties 中定义。在那里你可以换行

      flume.log.dir=./logs
      

      要使用您想使用的绝对路径 - 但您仍然需要正确的权限。

      【讨论】:

        猜你喜欢
        • 2015-12-03
        • 2023-03-28
        • 1970-01-01
        • 1970-01-01
        • 2020-08-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多