ShuffleMetricsSource is the metrics source of a BlockManager for shuffle metrics.

ShuffleMetricsSource lives on a Spark executor and is registered only when a Spark application runs in a non-local / cluster mode.

Figure 1. Registering ShuffleMetricsSource with "executor" MetricsSystem

Creating Instance

ShuffleMetricsSource takes the following to be created:

ShuffleMetricsSource is created when BlockManager is requested for the shuffle metrics source.


ShuffleMetricsSource is given a Dropwizard Metrics MetricSet when created.

The MetricSet is requested from the ShuffleClient (of BlockManager).

Source Name

ShuffleMetricsSource is given a name when created that is one of the following: