132、Spark核心编程进阶之yarn模式下日志查看

在yarn模式下,spark作业运行相关的executor和ApplicationMaster都是运行在yarn的container中的
一个作业运行完了以后,yarn有两种方式来处理spark作业打印出的日志

第一种是聚合日志方式(推荐,比较常用)
这种方式的话,顾名思义,就是说,将散落在集群中各个机器上的日志,最后都给聚合起来,让我们可以统一查看
如果打开了日志聚合的选项,即yarn.log-aggregation-enable,container的日志会拷贝到hdfs上去,并从机器中删除
对于这种情况,可以使用yarn logs -applicationId <app ID>命令,来查看日志
yarn logs命令,会打印出application对应的所有container的日志出来,当然,因为日志是在hdfs上的,我们自然也可以通过hdfs的命令行来直接从hdfs中查看日志
日志在hdfs中的目录,可以通过查看yarn.nodemanager.remote-app-log-dir和yarn.nodemanager.remote-app-log-dir-suffix属性来获知

第二种 web ui(可以去配一下)

日志也可以通过spark web ui来查看executor的输出日志
但是此时需要启动History Server,需要让spark history server和mapreduce history server运行着
并且在yarn-site.xml文件中,配置yarn.log.server.url属性
spark history server web ui中的log url,会将你重定向到mapreduce history server上,去查看日志

第三种 分散查看(通常不推荐)
如果没有打开聚合日志选项,那么日志默认就是散落在各个机器上的本次磁盘目录中的,在YARN_APP_LOGS_DIR目录下
根据hadoop版本的不同,通常在/tmp/logs目录下,或者$HADOOP_HOME/logs/userlogs目录下
如果你要查看某个container的日志,那么就得登录到那台机器上去,然后到指定的目录下去,找到那个日志文件,然后才能查看

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值