如何通过 Metrics Servlet 以 JSON 格式(如 Web UI)从 Apache Spark 获取所有指标

How to get all the metrics via Metrics Servlet in JSON format (as in Web UI) from Apache Spark

apache Spark web UI 提供了大量关于工作人员、驱动程序、存储等的有用信息。但是 Metrics Servlet 只提供了很少的信息。例如,我从 /metrics/json 得到以下信息:

{
  "version":"3.0.0",
  "gauges":{
    "local-1431683138663.<driver>.BlockManager.disk.diskSpaceUsed_MB":{
      "value":0
    },
    "local-1431683138663.<driver>.BlockManager.memory.maxMem_MB":{
      "value":3179
    },
    "local-1431683138663.<driver>.BlockManager.memory.memUsed_MB":{
      "value":169
    },
    "local-1431683138663.<driver>.BlockManager.memory.remainingMem_MB":{
      "value":3009
    },
    "local-1431683138663.<driver>.DAGScheduler.job.activeJobs":{
      "value":1
    },
    "local-1431683138663.<driver>.DAGScheduler.job.allJobs":{
      "value":1
    },
    "local-1431683138663.<driver>.DAGScheduler.stage.failedStages":{
      "value":0
    },
    "local-1431683138663.<driver>.DAGScheduler.stage.runningStages":{
      "value":1
    },
    "local-1431683138663.<driver>.DAGScheduler.stage.waitingStages":{
      "value":0
    }
  },
  "counters":{
  },
  "histograms":{
  },
  "meters":{
  },
  "timers":{
  }
}

如何获取存储等其他指标?

所有数据现在都可以在 Spark Monitoring REST API 从 1.4 版开始使用。感谢 Apache Spark!

Link : http://spark.apache.org/docs/latest/monitoring.html#rest-api