【问题标题】:How to parse Yarn logs to obtain performance indicators?如何解析 Yarn 日志获取性能指标?
【发布时间】:2020-02-19 14:10:46
【问题描述】:

总结:我需要一些东西给yarn logs -applicationId myID | parse

我正在开发一个具有一定并行度的代码,所以我需要关于 vcores 和所用 RAM 内存的反馈...我有每个测试的应用程序 ID,所以,运行后我可以使用

 yarn logs -applicationId application_1581298836342_95477 > myYarnLog.txt

但它是一个大而复杂的日志,我只需要检查 vcores 和使用的内存。

myYarnLog.txt的解析,过滤或计算性能指标?


PS:“RAM memory”可以是“Aggregate Resource Allocation”,vcores可以是一些虚拟CPU分配统计等。

【问题讨论】:

标签: parsing logging hadoop-yarn


【解决方案1】:

在你的yarn site.xml中类似,比如here

 yarn.resourcemanager.scheduler.monitor.enable

您需要在文件 capacity-scheduler.xml 中使用 silimar 作为响应 here

<property>
    <name>yarn.scheduler.capacity.resource-calculator</name>
    <value>org.apache.hadoop.yarn.util.resource.DominantResourceCalculator</value>
</property>

【讨论】:

  • 嗨@Soleil,感谢有关配置的线索。我的需要(问题的范围)是关于执行脚本的“如何读取日志文件”不是关于配置。我需要的是事实,而不是计划:日志文件说明进程真正使用了多少 vcore、vcore 小时数和 RAM。
  • 对不起,你可能需要安装类似lnav.org/features的工具
【解决方案2】:

正如@TinNguyen 建议的那样,我们可以使用grep 来检查一些信息,例如“vcores”行......也许其他读者可以建议其他 grep 策略。因此,此答案是一个 Wiki,用于整合所有建议


所有解析建议都在解析问题的myYarnLog.txt文件,

 yarn logs -applicationId application_1581298836342_95477 > myYarnLog.txt

命令和插件建议

  • ag。关键过滤器。示例:ag vcores myYarnLog.txt
  • grep。关键过滤器。示例:grep -i vcores myYarnLog.txt
  • awk。图灵完备的过滤器和格式化器。
    示例:awk "/vcores/i {print $0}" myYarnLog.txt
  • lnav,“日志文件导航器”,http://lnav.org/features (git)。
    接受正则表达式过滤等。

关键建议

过滤相关信息以进行性能分析的关键字。

标准日志术语:

  • LogAggregationType。日志文件标准属性。示例:聚合。

  • 信息代码生成器。示例:“代码在 381.632282 毫秒内生成”

  • INFO MemoryStore。示例:“块 broadcast_13_piece0 以字节形式存储在内存中(估计大小 11.5 KB,空闲 37.2 GB)”

  • INFO TorrentBroadcast。示例:“读取广播变量 13 耗时 91 毫秒”

  • ...

通用术语,在一些日志中使用:

  • vcore。一个术语,virtual-cores,可以用作单元。示例:“4 个 vcore”或“每个 vcore 5 秒”。

  • 在内存中存储为字节。示例:没有标记的行,例如“块 broadcast_13 存储为内存中的值(估计大小 26.3 KB,空闲 37.2 GB)”

  • 字节结果发送到驱动程序。相关吗?

  • ...

Spark 特定关键字:

  • ShuffleBlockFetcherIterator。带有开始/开始时间和块的行,可用于awk 总结。

  • ...

过滤规则

...使用列、复合过滤器、计算总计等。

awk 规则示例:/LogAggregationType/ {print "log type: " $2}


基于证据的配置调整

在任何evidence-based practice 中,我们都需要数据来分析和行动......在这种情况下,日志文件的数据,以便在配置文件中进行良好的更改。

请参阅 how to change config files 了解 Yarn、Spark 等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 2021-04-09
    • 1970-01-01
    相关资源
    最近更新 更多