Mic*_*may 8 log4j logback slf4j apache-spark
我在Amazon EMR集群上提交作业.我想将所有火花记录发送到redis/logstash.在EMR下配置spark的正确方法是什么?
保持log4j:添加一个bootstrap动作来修改/home/hadoop/spark/conf/log4j.properties来添加一个appender?但是,这个文件已经包含了很多东西,并且是hadoop conf文件的符号链接.我不想过多地使用它,因为它已经包含了一些rootLogger.哪个appender会做得最好?ryantenney/log4j-redis-appender + logstash/log4j-jsonevent-layout或pavlobaron/log4j2redis?
迁移到slf4j + logback:从spark-core中排除slf4j-log4j12,添加log4j-over-slf4j ...并使用带有com.cwbase.logback.RedisAppender的logback.xml?看起来这将依赖于问题.它会隐藏已在log4j.properties中定义的log4j.rootLoggers吗?
我错过了什么?
你对此有何看法?
更新
看起来我无法获得第二种选择.运行测试很好但是使用spark-submit(使用--conf spark.driver.userClassPathFirst = true)总是会在类路径上找到可怕的"检测到log4j-over-slf4j.jar和slf4j-log4j12.jar",抢占StackOverflowError."
| 归档时间: |
|
| 查看次数: |
1489 次 |
| 最近记录: |