Hi Qian, Indeed the metrics available with the Prometheus servlet sink (which is marked still as experimental) are limited, compared to the full instrumentation, and this is due to the way it is implemented with a servlet and cannot be easily extended from what I can see. You can use another supported metrics sink (see https://spark.apache.org/docs/latest/monitoring.html#metrics ) if you want to collect all the metrics are exposed by Spark executors. For example, I use the graphite sink and then collect metrics into an InfluxDB instance (see https://github.com/cerndb/spark-dashboard ) An additional comment is that there is room for having more sinks available for Apache Spark metrics, notably for InfluxDB and for Prometheus (gateway), if someone is interested in working on that.
Best, Luca From: Qian Sun <qian.sun2...@gmail.com> Sent: Friday, February 10, 2023 05:05 To: dev <dev@spark.apache.org>; user.spark <u...@spark.apache.org> Subject: Executor metrics are missing on prometheus sink Setting up prometheus sink in this way: -c spark.ui.prometheus.enabled=true -c spark.executor.processTreeMetrics.enabled=true -c spark.metrics.conf=/spark/conf/metric.properties metric.properties:{} *.sink.prometheusServlet.class=org.apache.spark.metrics.sink.PrometheusServlet *.sink.prometheusServlet.path=/metrics/prometheus Result: Both of these endpoints have some metrics <driver-ip>:4040/metrics/prometheus <driver-ip>:4040/metrics/executors/prometheus But the executor one misses metrics under the executor namespace described here: https://spark.apache.org/docs/latest/monitoring.html#component-instance--executor How to expose executor metrics on spark exeuctors pod? Any help will be appreciated. -- Regards, Qian Sun