Spark Metrics:如何访问执行器和工作器数据?

2024-02-17

注意:我在 YARN 上使用 Spark

我一直在尝试公制 https://spark.apache.org/docs/latest/monitoring.html#metrics在 Spark 中实现。我启用了 ConsoleSink 和 CsvSink,并为所有四个实例(驱动程序、主程序、执行程序、工作程序)启用了 JvmSource。但是我只有驱动程序输出,控制台和 csv 目标目录中没有工作程序/执行程序/主数据。

读完后这个问题 https://stackoverflow.com/questions/34804209/spark-submit-jars-does-not-work,我想知道提交作业时是否必须向执行者发送一些东西。

我的提交命令:./bin/spark-submit --class org.apache.spark.examples.SparkPi lib/spark-examples-1.5.0-hadoop2.6.0.jar 10

贝娄是我的度量属性 file:

# Enable JmxSink for all instances by class name
*.sink.jmx.class=org.apache.spark.metrics.sink.JmxSink

# Enable ConsoleSink for all instances by class name
*.sink.console.class=org.apache.spark.metrics.sink.ConsoleSink

# Polling period for ConsoleSink
*.sink.console.period=10

*.sink.console.unit=seconds

#######################################
# worker instance overlap polling period
worker.sink.console.period=5

worker.sink.console.unit=seconds
#######################################

# Master instance overlap polling period
master.sink.console.period=15

master.sink.console.unit=seconds

# Enable CsvSink for all instances
*.sink.csv.class=org.apache.spark.metrics.sink.CsvSink
#driver.sink.csv.class=org.apache.spark.metrics.sink.CsvSink

# Polling period for CsvSink
*.sink.csv.period=10

*.sink.csv.unit=seconds

# Polling directory for CsvSink
*.sink.csv.directory=/opt/spark-1.5.0-bin-hadoop2.6/csvSink/

# Worker instance overlap polling period
worker.sink.csv.period=10

worker.sink.csv.unit=second

# Enable Slf4jSink for all instances by class name
#*.sink.slf4j.class=org.apache.spark.metrics.sink.Slf4jSink

# Polling period for Slf4JSink
#*.sink.slf4j.period=1

#*.sink.slf4j.unit=minutes


# Enable jvm source for instance master, worker, driver and executor
master.source.jvm.class=org.apache.spark.metrics.source.JvmSource

worker.source.jvm.class=org.apache.spark.metrics.source.JvmSource

driver.source.jvm.class=org.apache.spark.metrics.source.JvmSource

executor.source.jvm.class=org.apache.spark.metrics.source.JvmSource

以下是 Spark 创建的 csv 文件的列表。我期待为 Spark 执行器(也是 JVM)访问相同的数据。

app-20160812135008-0013.driver.BlockManager.disk.diskSpaceUsed_MB.csv
app-20160812135008-0013.driver.BlockManager.memory.maxMem_MB.csv
app-20160812135008-0013.driver.BlockManager.memory.memUsed_MB.csv
app-20160812135008-0013.driver.BlockManager.memory.remainingMem_MB.csv
app-20160812135008-0013.driver.jvm.heap.committed.csv
app-20160812135008-0013.driver.jvm.heap.init.csv
app-20160812135008-0013.driver.jvm.heap.max.csv
app-20160812135008-0013.driver.jvm.heap.usage.csv
app-20160812135008-0013.driver.jvm.heap.used.csv
app-20160812135008-0013.driver.jvm.non-heap.committed.csv
app-20160812135008-0013.driver.jvm.non-heap.init.csv
app-20160812135008-0013.driver.jvm.non-heap.max.csv
app-20160812135008-0013.driver.jvm.non-heap.usage.csv
app-20160812135008-0013.driver.jvm.non-heap.used.csv
app-20160812135008-0013.driver.jvm.pools.Code-Cache.committed.csv
app-20160812135008-0013.driver.jvm.pools.Code-Cache.init.csv
app-20160812135008-0013.driver.jvm.pools.Code-Cache.max.csv
app-20160812135008-0013.driver.jvm.pools.Code-Cache.usage.csv
app-20160812135008-0013.driver.jvm.pools.Code-Cache.used.csv
app-20160812135008-0013.driver.jvm.pools.Compressed-Class-Space.committed.csv
app-20160812135008-0013.driver.jvm.pools.Compressed-Class-Space.init.csv
app-20160812135008-0013.driver.jvm.pools.Compressed-Class-Space.max.csv
app-20160812135008-0013.driver.jvm.pools.Compressed-Class-Space.usage.csv
app-20160812135008-0013.driver.jvm.pools.Compressed-Class-Space.used.csv
app-20160812135008-0013.driver.jvm.pools.Metaspace.committed.csv
app-20160812135008-0013.driver.jvm.pools.Metaspace.init.csv
app-20160812135008-0013.driver.jvm.pools.Metaspace.max.csv
app-20160812135008-0013.driver.jvm.pools.Metaspace.usage.csv
app-20160812135008-0013.driver.jvm.pools.Metaspace.used.csv
app-20160812135008-0013.driver.jvm.pools.PS-Eden-Space.committed.csv
app-20160812135008-0013.driver.jvm.pools.PS-Eden-Space.init.csv
app-20160812135008-0013.driver.jvm.pools.PS-Eden-Space.max.csv
app-20160812135008-0013.driver.jvm.pools.PS-Eden-Space.usage.csv
app-20160812135008-0013.driver.jvm.pools.PS-Eden-Space.used.csv
app-20160812135008-0013.driver.jvm.pools.PS-Old-Gen.committed.csv
app-20160812135008-0013.driver.jvm.pools.PS-Old-Gen.init.csv
app-20160812135008-0013.driver.jvm.pools.PS-Old-Gen.max.csv
app-20160812135008-0013.driver.jvm.pools.PS-Old-Gen.usage.csv
app-20160812135008-0013.driver.jvm.pools.PS-Old-Gen.used.csv
app-20160812135008-0013.driver.jvm.pools.PS-Survivor-Space.committed.csv
app-20160812135008-0013.driver.jvm.pools.PS-Survivor-Space.init.csv
app-20160812135008-0013.driver.jvm.pools.PS-Survivor-Space.max.csv
app-20160812135008-0013.driver.jvm.pools.PS-Survivor-Space.usage.csv
app-20160812135008-0013.driver.jvm.pools.PS-Survivor-Space.used.csv
app-20160812135008-0013.driver.jvm.PS-MarkSweep.count.csv
app-20160812135008-0013.driver.jvm.PS-MarkSweep.time.csv
app-20160812135008-0013.driver.jvm.PS-Scavenge.count.csv
app-20160812135008-0013.driver.jvm.PS-Scavenge.time.csv
app-20160812135008-0013.driver.jvm.total.committed.csv
app-20160812135008-0013.driver.jvm.total.init.csv
app-20160812135008-0013.driver.jvm.total.max.csv
app-20160812135008-0013.driver.jvm.total.used.csv
DAGScheduler.job.activeJobs.csv
DAGScheduler.job.allJobs.csv
DAGScheduler.messageProcessingTime.csv
DAGScheduler.stage.failedStages.csv
DAGScheduler.stage.runningStages.csv
DAGScheduler.stage.waitingStages.csv

由于您没有给出您尝试过的命令,我假设您没有传递metrics.properties。要传递metrics.propertis,命令应该是

spark-submit <other parameters> --files metrics.properties 
--conf spark.metrics.conf=metrics.properties

注意metrics.properties必须在--files和--conf中指定,--files会将metrics.properties文件传输到执行器。由于您可以在驱动程序上看到输出,而不是在执行程序上看到输出,我认为您缺少 --files 选项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spark Metrics:如何访问执行器和工作器数据? 的相关文章

随机推荐

  • 使用 Python 的 stdlib 查找本地 IP 地址

    如何在Python平台中独立且仅使用标准库找到本地IP地址 即192 168 x x或10 0 x x 我刚刚发现这个 但看起来有点黑客 但是他们说在 nix 上尝试过 我在 Windows 上尝试过 它有效 import socket s
  • ASP.NET MVC 剃刀视图,发布到与原始模型绑定不同的模型?

    好吧 我在项目中有一个组控制器和视图 其中模型绑定是 GroupViewModel 但群组页面比较复杂 用户可以提出讨论话题 在此组视图页面上 我有允许用户发布主题 回复的表单 这些表单使用的模型可以是 TopicViewModel 或 R
  • 如何控制jquery动画速度

    我正在使用 jquery 为 div 制作动画 我想控制移动的速度 我玩了很多这个 但我希望有人能告诉我如何控制速度 这是代码示例 document ready function block css left 617px top 300px
  • 如何单独渲染媒体库项目?

    如何使用 Sitecore 控件在子布局中渲染媒体库项目图像 对于具有 图像 字段的普通内容项来说 这是小菜一碟 只需使用sc Image or FieldRenderer控制 但我有这样的事情
  • 禁止通过构造函数将右值绑定到成员 const 引用

    我正在研究一个矩阵视图类 其构造函数将矩阵作为参数并将其绑定到const参考会员 我非常希望避免绑定右值 因为它们不通过构造函数参数绑定 并且我们最终会得到一个悬空引用 我想出了以下内容 简化的代码 struct Foo class X c
  • MySQL CASE WHEN THEN 空 case 值

    SELECT CASE WHEN age IS NULL THEN Unspecified WHEN age lt 18 THEN lt 18 WHEN age gt 18 AND age lt 24 THEN 18 24 WHEN age
  • 如何检查R中整个向量是否没有除NA(或NAN)以外的值?

    如何检查 R 中整个向量是否没有除 NA 或 NAN 以外的值 如果我使用 is na 它会返回一个 TRUE FALSE 向量 我需要检查是否存在单个非 NA 元素 功能all 当传递一个布尔向量时 会告诉你其中的所有值是否都是TRUE
  • Jquery 移动更改页面后退按钮不起作用

    我的 JQM 主 HTML 文件中有 4 个页面 当我使用 Changepage 切换到一个时 第一次没问题 但我使用 data rel back 按钮返回 这切换到上一页 但然后弹回到具有后退按钮的页面 我应该不使用 data rel b
  • 如何修复 Cloud Foundry 上的“资源文件模式无效”

    我正在尝试使用 Cloud Foundry 将应用程序部署到 Bluemix 并得到以下输出 the neutral zone KituraTest loganwright cf push Using manifest file Users
  • Linq 查询字典,其中列表中的值

    我有一个Dictionary
  • 获取并显示 Woocommerce 3 中的可变产品价格范围

    我对 wordpress 和 woocommerce 很陌生 我正在修改二十七个主题的搜索结果页面 使其看起来像一个表格 大多数产品都是可变产品 我使用下面的代码在表格中显示结果 table class search res style w
  • Eclipse Java 项目文件夹组织

    我是从 C Visual Studio 背景转向 Java 和 Eclipse 的 对于后者 我通常会组织这样的解决方案 MyProjects MyApp MyAppsUtilities LowerLevelStuff 其中 MyApp 将
  • 如何在 PHP 中提取属性声明的起始行?

    通过反射 很容易获得起始线和结束线 例如源文件中的方法 ReflectionFunctionAbstract getFileName ReflectionFunctionAbstract getStartLine ReflectionFun
  • 国际化简单 PHP 网站的最佳方式

    我必须开发一个非常简单的 php 网站 所以我不需要框架 但它必须支持多语言 EN FR CHINESE 我寻找了 php 内置系统 发现了两种方法 php5 3 的 intl 模块 http php net manual fr book
  • 使用逻辑应用在无服务器 Azure Functions 上按顺序消息处理

    我需要在 Azure 上处理传入消息 每条消息都将与一个特定的实体相关联 例如 通过EntityId属性 属于同一实体的消息必须按彼此的顺序进行处理 同时 我会保留 Azure Functions 的无服务器特性 如果我有 1 000 个实
  • 升级到 Struts 2.3.15 - 约定插件导致启动时崩溃

    我正在将 Struts2 安装升级到 2 3 15 添加后struts2 convention plugin 2 3 15 jar我的网络应用程序无法启动 例外列表的相关部分是 Caused by Attribute order must
  • 如何检测iPad用户点击键盘隐藏按钮?

    在我的应用程序中 我有一些围绕键盘隐藏和显示的复杂逻辑 我有兴趣检测用户 拥有 iPad 何时专门点击 iPad 键盘隐藏按钮 I am not仅当用户实际点击此按钮时 才有兴趣检测键盘何时应该隐藏 有什么建议么 谢谢你 我一直在寻找完全相
  • 运行 ansible playbook 时如何缩小范围?

    我有一个剧本需要花费很多时间来执行 部分原因是它必须在很多节点上运行 我在 ansible 检查所有节点的状态上浪费了时间 并且我需要做一些中间某个地方发生了变化 缩小剧本范围的最佳方式是什么 我考虑过隔离所需的更改和 或仅在单个节点上运行
  • 使用 Cucumber 测试 EventMachine

    我正在尝试为我的应用程序编写一个黄瓜功能和 rspec 测试 以使用 twitter stream 访问 twitter 流 api 我有以下代码 Then I should see the latest d tweets from my
  • Spark Metrics:如何访问执行器和工作器数据?

    注意 我在 YARN 上使用 Spark 我一直在尝试公制 https spark apache org docs latest monitoring html metrics在 Spark 中实现 我启用了 ConsoleSink 和 C