amazon-web-services - 新 EMR 集群上出现 java.io.FileNotFoundException 错误

标签 amazon-web-services hive emr

无法理解如何解决在新的 EMR 服务器上运行 hive cli 时收到的以下错误。我已经确认正在使用的用户有权写入 /var/log/hive/user/hadoop

log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: /var/log/hive/user/hadoop/hive.log (No such file or directory)
    at java.io.FileOutputStream.open(Native Method)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:221)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:142)
    at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)
    at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)
    at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)
    at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)
    at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)
    at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)
    at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)
    at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)
    at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:648)
    at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:514)
    at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:580)
    at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:415)
    at org.apache.hadoop.hive.common.LogUtils.initHiveLog4jDefault(LogUtils.java:127)
    at org.apache.hadoop.hive.common.LogUtils.initHiveLog4jCommon(LogUtils.java:77)
    at org.apache.hadoop.hive.common.LogUtils.initHiveLog4j(LogUtils.java:58)
    at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:586)
    at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:570)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
log4j:ERROR Either File or DatePattern options are not set for appender [DRFA].

最佳答案

这是由于缺少文件夹/var/log/hive/user/hadoop/造成的。

所以您现在应该输入以下命令:

  1. 使用以下命令将此 /var/log/hive/ 的所有者更改为当前 hadoop 用户:

    sudo chown hadoop -R /var/log/hive
    
  2. 创建/var/log/hive/user/hadoop/文件夹

    mkdir /var/log/hive/user
    mkdir /var/log/hive/user/hadoop
    
  3. 再次输入 hive ,一切应该没问题。

关于amazon-web-services - 新 EMR 集群上出现 java.io.FileNotFoundException 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35069721/

相关文章:

hadoop - 连接到CDH4.5群集

hadoop - 在 AWS EMR 上使用 pig 的 Java 堆空间

amazon-web-services - 添加带有 Internet 网关的公共(public)子网和带有 NAT 的私有(private)子网时,RDS 公共(public)访问丢失

amazon-web-services - 使用 IAM 角色而不是凭证从使用 terraform 的 EC2 实例创建 aws 资源

amazon-web-services - 使用Jenkins从EC2删除现有的docker镜像

python - Django Hive 连接

hadoop - Hive数组与结构

mongodb - 如果我可以使用 AWS 安全组来保护我的 MongoDB EC2 实例,我真的需要 VPC 吗?

python - 如何在 Amazon EMR 上引导安装 Python 模块?

amazon-web-services - 如何从 AWS EMR 下载 Zeppelin Notebook