调用spark API,监控任务的进度
我们现在需要监控datapre0这个任务每一次执行的进度,操作如下:
1. 如图所示,打开spark管理页面,找到对应的任务,点击任务名datapre0
2. 进去之后,获得对应IP和端口
3. 访问api(linux直接通过curl访问)
http://ip:4040/api/v1/application/Job_id
4. 其他API说明(对应spark官网连接 http://spark.apache.org/docs/latest/monitoring.html#rest-api)
/applications,获取作业列表 /applications/[app-id]/jobs,指定作业的job列表 /applications/[app-id]/jobs/[job-id],指定job的信息 /applications/[app-id]/stages,指定作业的stage列表 /applications/[app-id]/stages/[stage-id],指定stage的所有attempt列表 /applications/[app-id]/stages/[stage-id]/[stage-attempt-id],指定stage attempt的信息 /applications/[app-id]/stages/[stage-id]/[stage-attempt-id]/taskSummary,指定stage attempt所有task的metrics统计信息 /applications/[app-id]/stages/[stage-id]/[stage-attempt-id]/taskList,指定stage attempt的task列表 /applications/[app-id]/executors,指定作业的executor列表 /applications/[app-id]/storage/rdd,指定作业的持久化rdd列表 /applications/[app-id]/storage/rdd/[rdd-id],指定持久化rdd的信息 /applications/[app-id]/logs,下载指定作业的所有日志的压缩包 /applications/[app-id]/[attempt-id]/logs,下载指定作业的某次attempt的所有日志的压缩包