Métriques Spark

Ce document fournit des informations sur les métriques Spark. Par défaut, Dataproc sans serveur active la collecte des métriques Spark disponibles, sauf si vous utilisez des propriétés de collecte des métriques Spark pour désactiver ou remplacer la collecte d'une ou de plusieurs métriques Spark.

Pour connaître les autres propriétés que vous pouvez définir lorsque vous envoyez une charge de travail par lot Spark Dataproc sans serveur, consultez la section Propriétés Spark.

Propriétés de collecte des métriques Spark

Vous pouvez utiliser les propriétés listées dans cette section pour désactiver ou remplacer la collecte d'une ou de plusieurs métriques Spark disponibles.

Propriété Description
spark.dataproc.driver.metrics Utilisez-le pour désactiver ou remplacer les métriques du pilote Spark.
spark.dataproc.executor.metrics Utilisez-le pour désactiver ou remplacer les métriques de l'exécuteur Spark.
spark.dataproc.system.metrics Utilisez cette option pour désactiver les métriques système Spark.

Exemples de gcloud CLI:

  • Désactivation de la collecte des métriques du pilote Spark:

    gcloud dataproc batches submit spark \
        --properties spark.dataproc.driver.metrics="" \
        --region=region \
        other args ...
    
  • Forcez la collecte des métriques de pilote par défaut de Spark pour ne collecter que les métriques BlockManager:disk.diskSpaceUsed_MB et DAGScheduler:stage.failedStages:

    gcloud dataproc batches submit spark \
        --properties=^~^spark.dataproc.driver.metrics="BlockManager:disk.diskSpaceUsed_MB,DAGScheduler:stage.failedStages" \
        --region=region \
        other args ...
    

Métriques Spark disponibles

Dataproc sans serveur collecte les métriques Spark listées dans cette section, sauf si vous utilisez des propriétés de collecte de métriques Spark pour désactiver ou remplacer leur collecte.

custom.googleapis.com/METRIC_EXPLORER_NAME.

Métriques du pilote Spark

Métrique Nom de l'explorateur de métriques
BlockManager:disk.diskSpaceUsed_MB spark/driver/BlockManager/disk/diskSpaceUsed_MB
BlockManager:memory.maxMem_MB spark/driver/BlockManager/memory/maxMem_MB
BlockManager:memory.memUsed_MB spark/driver/BlockManager/memory/memUsed_MB
DAGScheduler:job.activeJobs spark/driver/DAGScheduler/job/activeJobs
DAGScheduler:job.allJobs spark/driver/DAGScheduler/job/allJobs
DAGScheduler:messageProcessingTime spark/driver/DAGScheduler/messageProcessingTime
DAGScheduler:stage.failedStages spark/driver/DAGScheduler/stage/failedStages
DAGScheduler:stage.runningStages spark/driver/DAGScheduler/stage/runningStages
DAGScheduler:stage.waitingStages spark/driver/DAGScheduler/stage/waitingStages

Métriques de l'exécuteur Spark

Métrique Nom de l'explorateur de métriques
ExecutorAllocationManager:executors.numberExecutorsDecommissionUnfinished spark/driver/ExecutorAllocationManager/executors/numberExecutorsDecommissionUnfinished
ExecutorAllocationManager:executors.numberExecutorsExitedUnexpectedly spark/driver/ExecutorAllocationManager/executors/numberExecutorsExitedUnexpectedly
ExecutorAllocationManager:executors.numberExecutorsGracefullyDecommissioned spark/driver/ExecutorAllocationManager/executors/numberExecutorsGracefullyDecommissioned
ExecutorAllocationManager:executors.numberExecutorsKilledByDriver spark/driver/ExecutorAllocationManager/executors/numberExecutorsKilledByDriver
LiveListenerBus:queue.executorManagement.listenerProcessingTime spark/driver/LiveListenerBus/queue/executorManagement/listenerProcessingTime
executor:bytesRead spark/executor/bytesRead
executor:bytesWritten spark/executor/bytesWritten
executor:cpuTime spark/executor/cpuTime
executor:diskBytesSpilled spark/executor/diskBytesSpilled
executor:jvmGCTime spark/executor/jvmGCTime
executor:memoryBytesSpilled spark/executor/memoryBytesSpilled
executor:recordsRead spark/executor/recordsRead
executor:recordsWritten spark/executor/recordsWritten
executor:runTime spark/executor/runTime
executor:shuffleFetchWaitTime spark/executor/shuffleFetchWaitTime
executor:shuffleRecordsRead spark/executor/shuffleRecordsRead
executor:shuffleRecordsWritten spark/executor/shuffleRecordsWritten
executor:shuffleRemoteBytesReadToDisk spark/executor/shuffleRemoteBytesReadToDisk
executor:shuffleWriteTime spark/executor/shuffleWriteTime
executor:succeededTasks spark/executor/succeededTasks
ExecutorMetrics:MajorGCTime spark/executor/ExecutorMetrics/MajorGCTime
ExecutorMetrics:MinorGCTime spark/executor/ExecutorMetrics/MinorGCTime

Métriques système

Métrique Nom de l'explorateur de métriques
agent:uptime agent/uptime
cpu:utilization cpu/utilization
disk:bytes_used disk/bytes_used
disk:percent_used disk/percent_used
memory:bytes_used memory/bytes_used
memory:percent_used memory/percent_used
network:tcp_connections network/tcp_connections

Afficher les métriques Spark

Pour afficher les métriques de lot, cliquez sur un ID de lot sur la page Lots de Dataproc dans la console Google Cloud pour ouvrir la page Détails du lot, qui affiche un graphique de métriques pour la charge de travail par lot sous l'onglet Surveillance.

Figure 1. Graphique des métriques Spark pour une charge de travail par lot.

Pour en savoir plus sur l'affichage des métriques collectées, consultez la section Cloud Monitoring de Dataproc.