【问题标题】:If there are a way to get info at runtime about SparkMetrics configuration如果有办法在运行时获取有关 SparkMetrics 配置的信息
【发布时间】:2019-03-01 09:37:28
【问题描述】:

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

【问题讨论】:

    标签: amazon-web-services apache-spark amazon-emr metrics


    【解决方案1】:

    这基本上是因为 EMR 上的 Spark 没有从 fat jar 的 resources 目录中提取您的自定义 metrics.properties 文件。

    对于 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 控制台或通过 SDK 创建 EMR 集群时使用此 JSON

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 2017-11-29
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      相关资源
      最近更新 更多