You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何以JSON格式获取Spark History Server日志数据?

解决Spark History Server API返回HTML而非JSON的问题

你请求的地址端口配置错误:默认Spark Master UI的端口是8080,Spark History Server的默认端口是18080,你当前请求的8080端口实际是Spark Master的UI页面,所以返回HTML内容。

正确操作步骤

  • 第一步:确认Spark History Server的运行端口,默认是18080,可在配置项spark.history.ui.port中查看自定义值
  • 第二步:请求API时建议显式指定JSON响应头,避免服务端默认返回HTML
  • 第三步:使用对应路径的API获取所需指标,以下是可直接运行的示例命令:

常用API示例

  1. 获取所有应用列表
curl -H "Accept: application/json" http://localhost:18080/api/v1/applications
  1. 获取指定应用下的运行/完成作业列表(将<app-id>替换为实际应用ID)
curl -H "Accept: application/json" http://localhost:18080/api/v1/applications/<app-id>/jobs
  1. 获取指定应用的Executor列表
curl -H "Accept: application/json" http://localhost:18080/api/v1/applications/<app-id>/executors

异常排查

如果修改端口后仍然返回HTML,检查以下配置:

  • 确认Spark History Server已正常启动,可直接访问http://<history-server-ip>:<port>查看页面是否正常加载
  • 确认配置项spark.history.ui.enable未设置为false,该配置默认开启REST接口能力
  • 如果你要获取的是当前正在运行的Spark应用的实时指标,也可以直接访问该应用的UI端口(默认4040,多应用同时运行时依次递增为4041、4042等),API路径规则和History Server完全一致。

内容的提问来源于stack exchange,提问作者Prajeeth Emanuel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 03:24:02