kex0916
2017-12-29 21:05:54 +08:00
spark 的日志可以分为 driver 端和 executor 端的日志,你说的 spark 的 console 输出应该主要指的是 yarn client 模式吧
executor 端日志由于你本身是在 yarn 上执行的,可以配置 yarn.log-aggregation-enable=true 来开启日志聚合,这个功能会把 container 的日志收集到 hdfs 上,开启后可以通过 yarn logs -applicationId 命令来获取 yarn 应用的日志,也就能得到 spark on yarn 应用的 executor 端日志
driver 端日志(这里主要是 yarn client 模式)可以定制 HdfsAppender 在 log4j 里配置该 appender 可以保存到 hdfs。
另外可以配置 history server 里面可以看到已经执行应用的信息
更专业点可以考虑用 flume 来收集日志