计算引擎提供SparkUI和HDFS Shell工具,方便您查看作业运行状态、资源使用情况及历史作业信息。
前提条件
查看作业运行信息
进入SparkUI界面
SparkUI地址获取方法请参见查看SparkUI地址。
关于开源SparkUI界面的详细介绍请参见开源SparkUI。
将SparkUI地址复制在浏览器地址栏中,可以进入SparkUI界面。进入SparkUI后,默认显示 Jobs 页面,页面顶部展示当前应用基本信息,包括 User、Total Uptime 和 Scheduling Mode(如 FIFO),下方提供可展开的 Event Timeline 区域。
表 1. SparkUI页签介绍
页签 | 描述 |
Jobs | 所有运行作业的详细信息。 |
Stages | Spark作业所有Stage的状态信息。 |
Storage | 显示持久化的RDD以及DF的存储信息。 |
Environment | Spark作业运行的环境。Spark作业启动时,从运行环境、配置文件、用户传入参数共同构建而来。 |
Executors | Spark作业运行的Executors状态信息。 |
SQL | 计算引擎执行SQL的详细信息。 |
Kyuubi Query Engine | 展示JDBC Session信息。 |
查看作业运行状态
通过SparkUI界面查看作业运行状态
通过SparkUI界面可以查看Spark作业运行状态。
当计算引擎作业状态为运行中时,才可以通过SparkUI界面查看作业运行状态。
查看已完成的Spark作业需要开通History Server,具体请参见查看作业运行历史。
登录Lindorm管理控制台。
在实例列表页,单击目标实例ID。
在左侧导航栏,选择,可以查看正在运行的计算引擎作业。
单击需要查看计算引擎作业的WebUI地址,通过宽表引擎用户名和密码登录SparkUI。
说明宽表引擎默认用户名和密码的获取方式:在 数据库连接页面,单击宽表引擎页签,复制默认用户名及密码。
在顶部菜单栏单击Executors,查看运行中的计算引擎作业和所有的Executor。
Executors 页面上方为 Summary 汇总区,按 Active、Dead、Total 分行展示 Executor 数量及聚合指标;下方为 Executors 详情表,列出各 Executor 的 ID、Address、Status、资源用量(Storage Memory、Disk Used、Cores)及任务指标(Active Tasks、Failed Tasks、Complete Tasks、Total Tasks、Task Time (GC Time))等信息。
在Executors列表中,单击Logs列的stdout或stderr查看运行日志,单击Thread Dump列查看线程堆栈信息,单击System Status Dump列查看Executor系统状态信息。
说明单击stdout可以查看标准输出日志。
单击stderr可以查看标准错误输出日志。
通过HDFS Shell工具查看作业运行日志
计算引擎作业的运行日志会被系统同步并存储至底层的文件引擎中,如果需要查看的计算引擎作业中断,您可以开通云原生多模数据库 Lindorm文件引擎,并使用HDFS Shell工具查看作业的运行日志。
建议您在提交JAR作业时,在Main函数开始时初始化SparkSession对象,避免部分异常运行日志无法同步至文件引擎中。
如果Lindorm实例的计算引擎服务规模较大,计算引擎作业运行日志可能给DFS造成较大的压力。您可以在计算引擎作业启动参数中配置spark.dfsLog.executor.enabled=false,该参数指定Executor日志不保存至DFS,而计算引擎作业Driver运行日志的收集不会受到影响。
登录Lindorm管理控制台。
在实例列表页,单击目标实例ID。
在左侧导航栏,选择,获取JobId,例如:
562f7c98-2a66-****。使用HDFS Shell工具查看日志,HDFS Shell工具的配置方法请参见连接指南。
计算引擎作业的日志存储目录为
/ldspark/ldspark-logs/${JobId},Driver日志存储目录为__driver_logs__,Executor日志存储目录为__executor_logs__/${EXECUTOR_ID}。以查看Driver的stderr运行日志为例,请执行以下语句:$HADOOP_HOME/bin/hadoop fs -cat /ldspark/ldspark-logs/${JobId}/__driver_logs__/stderr | less说明您也可以通过FUSE客户端将文件引擎目录挂载至ECS进行访问,具体操作请参见通过HDFS FUSE连接并使用LindormDFS。
查看作业运行历史
计费方式
按照Lindorm实例占用资源和时长计费。Lindorm实例占用资源为1CU(1CU=1核4 GB),1CU的单价为0.203元/小时。开通History Server后无论是否使用都会开始计费。
开通History Server服务
登录Lindorm管理控制台。
在实例列表页,单击目标实例ID。
在左侧导航栏,单击计算引擎。
单击服务管理页签。
单击History Server页签,打开Spark History开关。
查看历史作业信息
登录Lindorm管理控制台。
在实例列表页,单击目标实例ID。
在左侧导航栏,单击计算引擎。
单击服务管理页签。
单击History Server页签。
单击WebUI地址,通过宽表引擎用户名和密码登录History Server页面,查看历史作业运行时的信息。
说明宽表引擎默认用户名和密码的获取方式:在数据库连接页面,单击宽表引擎页签,复制默认用户名及密码。
如果History Server页面显示No completed applications found!说明没有历史作业或者历史作业过期被清理了。
History Server 页面以表格形式展示历史作业信息,表格列包括 Version、App ID、App Name、Started、Completed、Duration、Spark User、Last Updated 和 Event Log,其中 Event Log 列提供 Download 按钮用于下载事件日志。
相关任务
操作
筛选历史作业
在History Server页面右上角的Search文本框中输入App Name、Started或者Completed进行筛选。
查看正在运行的作业信息
单击History Server页面左下角的Show incomplete applications。
单击App ID进入历史作业的Spark UI界面。