Hadoop log4j找不到KafkaLog4JAppender.class

时间:2016-04-18 09:05:43

标签: java hadoop logging log4j apache-kafka

我在我的MR工作中添加了KafkaLog4JAppender功能。 本地作业正在运行,并将格式化的日志发送到我的Kafka集群。

当我尝试从纱线服务器运行它时,使用:

jar [jar-name].jar [DriverClass].class [job-params] -Dlog4j.configuration=log4j.xml -libjars

我得到以下表示:

log4j:ERROR Could not create an Appender. Reported error follows.
java.lang.ClassNotFoundException: kafka.producer.KafkaLog4jAppender

KafkaLog4JAppender类位于路径中。 正在运行

jar tvf [my-jar].jar | grep KafkaLog4J

找到班级

我有点失落,并会感激任何有用的输入

提前感谢!

1 个答案:

答案 0 :(得分:0)

如果它在本地模式下工作而不能在Yarn / distributed模式下工作,则可能是jar无法正确分发的问题。您可能想查看Using third part jars and files in your MapReduce application(Distributed cache)以获取有关如何分发包含KafkaLog4jAppender.class的jar的详细信息