我们知道,yarn上能够监控运行的spark情况,但是一个程序运行完后就会被销毁,看不到了。
所以我们需要在程序运行完也能看到日志,这是就需要配置我们的参数了
1.进入spark conf下,拷贝一个spark.defaults.conf文件修改参数
spark.eventLog.enabled true //将日志持久化存储下来展示
spark.eventLog.dir hdfs://bjcdh:8021/dir //日志存放地址
2. 修改spark.env.sh 参数
SPARK_HISTORY_OPTS="-Dspark.history.fs.logDirectory=hdfs://bjcdh:8021/dir -DSpark.history.ui.port=7777" //指定读取路径和端口
3.启动日志监控,进入到sbin/ 运行 ./start-history-server.sh
运行之后会提示输出一个.out的日志文件,使用tail -f 命令查看日志中最后面提到的启动地址,浏览器中输入这个地址可看到运行的和未运行的。
例如地址http://hadoop001:7777
4.另外还有些参数需要我们自己设置
spark.history.fs.update.interval 10s //每10s去刷新一次看有没有更新
spark.history.fs.cleaner.enabled true //自动清理器 清理日志
spark.history.fs.cleaner.interval 1d //每隔一台清理一次
spark.history.fs.cleaner.maxAge 7d //清理7天之前的日志
这些都是生产环境需要设置的一些参数。用来排查程序挂掉的日志信息。