首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >火花流应用程序与卡夫卡log4j附录问题

火花流应用程序与卡夫卡log4j附录问题
EN

Stack Overflow用户
提问于 2016-03-22 15:35:22
回答 1查看 773关注 0票数 2

我正在测试我的星火流应用程序,我的代码中有多个函数:-其中一些在DStream[RDDXXX]上运行,有些在RDDXXX上运行。

我使用Kafka log4j appender记录在我的函数中发生的业务用例,这些案例都是在DStreamRDD & RDD it self上运行的。

但是,只有在运行在RDD ->上的函数中,数据才会被附加到Kafka,而当我想从运行在DStream上的函数中将数据附加到kafka时,数据就不起作用了。

有人知道这种行为的原因吗?

我正在一台虚拟机上工作,在那里我拥有Spark & Kafka。我提交申请使用火花提交。

编辑的

事实上,我已经找出了问题的所在。数据仅从我的主要函数中的代码部分附加到Kafka。所有在我的主语之外的代码,都不会将数据写入kafka。

总的来说,我声明记录器如下:

代码语言:javascript
复制
val kafkaLogger = org.apache.log4j.LogManager.getLogger("kafkaLogger")

在我的主体之外,我不得不声明如下:

代码语言:javascript
复制
@transient lazy val kafkaLogger = org.apache.log4j.LogManager.getLogger("kafkaLogger")

以避免序列化问题。

原因可能是JVM序列化概念的背后,或者仅仅是因为工作人员看不到log4j配置文件(但我的log4j文件在我的源代码中,在资源文件夹中)。

编辑2

我尝试过以多种方式将log4j文件发送给执行者,但不起作用。我试过:

  • 发送log4j文件在- file命令的火花-提交
  • 设置:火花提交中的--conf "spark.executor.extraJavaOptions =-Dlog4j.configuration=file:/home/vagrant/log4j.properties"
  • 设置log4j.properties文件在-驱动类-路径火花提交.

这些选择都不起作用。

有人找到解决办法了吗?我在错误日志中没有看到任何错误。

谢谢

EN

Stack Overflow用户

发布于 2016-07-25 18:45:00

我认为您是close..first,希望确保使用标志将所有文件导出到所有节点上的工作目录(而不是CLASSPATH)。然后要将这些文件引用到执行程序和驱动程序的extracClassPath选项。我已经附加了以下命令,希望能有所帮助。关键是理解一旦文件被导出,所有文件都可以使用工作目录的文件名(而不是url路径)在节点上访问。

注意:将log4j文件放入“资源”文件夹将无法工作。(至少当我试过的时候,它没有。)

代码语言:javascript
复制
sudo -u hdfs spark-submit --class "SampleAppMain" --master yarn --deploy-mode cluster --verbose --files file:///path/to/custom-log4j.properties,hdfs:///path/to/jar/kafka-log4j-appender-0.9.0.0.jar --conf "spark.driver.extraClassPath=kafka-log4j-appender-0.9.0.0.jar" --conf "spark.executor.extraClassPath=kafka-log4j-appender-0.9.0.0.jar"  --conf "spark.driver.extraJavaOptions=-Dlog4j.configuration=custom-log4j.properties" --conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=custom-log4j.properties"  /path/to/your/jar/SampleApp-assembly-1.0.jar
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36158722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档