ITPub博客

首页 > 大数据 > Hadoop > log4j:ERROR Could not instantiate class [...log.metrics.EventCounter].

log4j:ERROR Could not instantiate class [...log.metrics.EventCounter].

原创 Hadoop 作者:Yojen_Qi 时间:2014-09-15 00:29:48 0 删除 编辑
Hive 报下面的错: 我的 Hive 版本是 hive-0.9.0.tar.gz
[root@hadoop lib]# hive
log4j:ERROR Could not instantiate class [org.apache.hadoop.log.metrics.EventCounter].
java.lang.ClassNotFoundException: org.apache.hadoop.log.metrics.EventCounter
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at org.apache.log4j.helpers.Loader.loadClass(Loader.java:179)
        at org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:320)
        at org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:121)
        at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:664)
        at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:647)
        at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:544)
        at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:440)
        at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:476)
        at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:354)
        at org.apache.hadoop.hive.common.LogUtils.initHiveLog4j(LogUtils.java:52)
        at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:573)
        at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:557)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
log4j:ERROR Could not instantiate appender named "EventCounter".
Logging initialized using configuration in file:/usr/local/hive/conf/hive-log4j.properties
Hive history file=/tmp/root/hive_job_log_root_201409140910_1387974911.txt
hive>


解决办法:

根据上面的保存信息: vim     /usr/local/hive/conf/hive-log4j.properties
差不多 71,72 行

修改
 71 # log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
 72 log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter

修改为
 71 log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
 72 # log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter

即: 第 71 行的注释打开;注释住第 72 行
重新进 Hive 就好了.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28520410/viewspace-1269674/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: Hive求差集
请登录后发表评论 登录
全部评论

注册时间:2014-06-16

  • 博文量
    80
  • 访问量
    141908