通过控制台查看作业

更新时间:
复制 MD 格式

计算引擎提供SparkUIHDFS Shell工具,方便您查看作业运行状态、资源使用情况及历史作业信息。

前提条件

  • 已开通云原生多模数据库 Lindorm实例的计算引擎服务,具体操作请参见服务开通

  • 已将客户端IP地址添加至云原生多模数据库 Lindorm实例的白名单,具体操作请参见设置白名单

查看作业运行信息

进入SparkUI界面

说明

SparkUI地址复制在浏览器地址栏中,可以进入SparkUI界面。进入SparkUI后,默认显示 Jobs 页面,页面顶部展示当前应用基本信息,包括 UserTotal UptimeScheduling 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,具体请参见查看作业运行历史

  1. 登录Lindorm管理控制台

  2. 实例列表页,单击目标实例ID。

  3. 在左侧导航栏,选择计算引擎 > 作业列表,可以查看正在运行的计算引擎作业。

  4. 单击需要查看计算引擎作业的WebUI地址,通过宽表引擎用户名和密码登录SparkUI。

    说明

    宽表引擎默认用户名和密码的获取方式:在 数据库连接页面,单击宽表引擎页签,复制默认用户名及密码。

  5. 在顶部菜单栏单击Executors,查看运行中的计算引擎作业和所有的Executor。

    Executors 页面上方为 Summary 汇总区,按 Active、Dead、Total 分行展示 Executor 数量及聚合指标;下方为 Executors 详情表,列出各 Executor 的 ID、Address、Status、资源用量(Storage MemoryDisk UsedCores)及任务指标(Active TasksFailed TasksComplete TasksTotal TasksTask Time (GC Time))等信息。

  6. Executors列表中,单击Logs列的stdoutstderr查看运行日志,单击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运行日志的收集不会受到影响。

  1. 登录Lindorm管理控制台

  2. 实例列表页,单击目标实例ID。

  3. 在左侧导航栏,选择计算引擎 > 作业列表,获取JobId,例如:562f7c98-2a66-****

  4. 使用HDFS Shell工具查看日志,HDFS Shell工具的配置方法请参见连接指南

  5. 计算引擎作业的日志存储目录为/ldspark/ldspark-logs/${JobId},Driver日志存储目录为__driver_logs__,Executor日志存储目录为__executor_logs__/${EXECUTOR_ID}。以查看Driverstderr运行日志为例,请执行以下语句:

    $HADOOP_HOME/bin/hadoop fs -cat  /ldspark/ldspark-logs/${JobId}/__driver_logs__/stderr | less
    说明

    您也可以通过FUSE客户端将文件引擎目录挂载至ECS进行访问,具体操作请参见通过HDFS FUSE连接并使用LindormDFS

查看作业运行历史

计费方式

按照Lindorm实例占用资源和时长计费。Lindorm实例占用资源为1CU(1CU=14 GB),1CU的单价为0.203元/小时。开通History Server后无论是否使用都会开始计费。

开通History Server服务

  1. 登录Lindorm管理控制台

  2. 实例列表页,单击目标实例ID。

  3. 在左侧导航栏,单击计算引擎

  4. 单击服务管理页签。

  5. 单击History Server页签,打开Spark History开关。

查看历史作业信息

  1. 登录Lindorm管理控制台

  2. 实例列表页,单击目标实例ID。

  3. 在左侧导航栏,单击计算引擎

  4. 单击服务管理页签。

  5. 单击History Server页签。

  6. 单击WebUI地址,通过宽表引擎用户名和密码登录History Server页面,查看历史作业运行时的信息。

    说明
    • 宽表引擎默认用户名和密码的获取方式:在数据库连接页面,单击宽表引擎页签,复制默认用户名及密码。

    • 如果History Server页面显示No completed applications found!说明没有历史作业或者历史作业过期被清理了。

    History Server 页面以表格形式展示历史作业信息,表格列包括 VersionApp IDApp NameStartedCompletedDurationSpark UserLast UpdatedEvent Log,其中 Event Log 列提供 Download 按钮用于下载事件日志。

    相关任务

    操作

    筛选历史作业

    History Server页面右上角的Search文本框中输入App NameStarted或者Completed进行筛选。

    查看正在运行的作业信息

    单击History Server页面左下角的Show incomplete applications

  7. 单击App ID进入历史作业的Spark UI界面。