如果有办法在运行时获取有关SparkMetrics配置的信息

问题描述 投票:0回答:1

我使用CSV sinc将metrics.properties文件添加到资源目录(maven项目)。当我在本地运行Spark应用程序时,一切都很好 - 会出现指标。但是,当我向Amazon EMR提交相同的胖罐时,我没有看到任何尝试将指标放入CSV sinc。所以我想在运行时检查SparkMetrics子系统的加载设置。如果有可能这样做?我看着SparkEnv.get.metricsSystem,但没有找到任何。

amazon-web-services apache-spark amazon-emr metrics
1个回答
1
投票

这基本上是因为EMR上的Spark没有从胖罐的metrics.properties目录中获取你的自定义resources文件。

对于EMR,配置的首选方法是通过EMR Configurations API,您需要在嵌入式JSON中传递classificationproperties

  • 对于spark metrics子系统,这里是一个修改几个指标的示例
  [
    {
      "Classification": "spark-metrics",
      "Properties": {
        "*.sink.csv.class": "org.apache.spark.metrics.sink.CsvSink",
        "*.sink.csv.period": "1"
      }
    }
  ]

使用Amazon Console或SDK创建EMR集群时,可以使用此JSON

© www.soinside.com 2019 - 2024. All rights reserved.