Apache Storm 官方文档 —— Metrics

简介:

原文链接    译者:魏勇

Storm 提供了一个可以获取整个拓扑中所有的统计信息的度量接口。Storm 内部通过该接口可以跟踪各类统计数字:executor 和 acker 的数量、每个 bolt 的平均处理时延、worker 使用的最大堆容量等等,这些信息都可以在 Nimbus 的 UI 界面中看到。

Metric 类型

使用 Metrics 只需要实现一个接口方法:getValueAndReset,在方法中可以查找汇总值、并将该值复位为初始值。例如,在 MeanReducer 中就实现了通过运行总数除以对应的运行计数的方式来求取均值,然后将两个值都重新设置为 0。

Storm 提供了以下几种 metric 类型:

  • AssignableMetric — 将 metric 设置为指定值。此类型在两种情况下有用:1. metric 本身为外部设置的值;2. 你已经另外计算出了汇总的统计值。
  • CombinedMetric — 可以对 metric 进行关联更新的通用接口。
  • CountMetric — 返回 metric 的汇总结果。可以调用 incr() 方法来将结果加一;调用 incrBy(n) 方法来将结果加上给定值。
  • ReducedMetric
    • MeanReducer — 跟踪由它的 reduce() 方法提供的运行状态均值结果(可以接受 DoubleIntegerLong 等类型,内置的均值结果是 Double 类型)。MeanReducer 确实是一个相当棒的家伙。
    • MultiReducedMetric — 返回包含一组 ReducedMetric 的 HashMap

Metric Consumer

构建自定义 metric

内建的 Metric

builtin_metrics.clj 为内建的 metrics 设置了数据结构,以及其他框架组件可以用于更新的虚拟方法。metrics 本身是在回调代码中实现计算的 — 请参考 executor.clj 中的 ack-spout-msg 的例子。 

目录
相关文章
|
7月前
|
Prometheus 监控 Cloud Native
Flink Metrics 简介
Fink Metrics 是 Flink 内部的一个度量系统,除了可以在 Flink UI 上展示运行时的指标,也可以对外暴露接口集成到第三方系统,本文详述了这两方面的应用
|
算法 流计算 Scala
《Flink官方文档》Batch Examples(一)
批处理示例 下面的程序展示了从简单的单词词频统计到图算法等不同的Flink应用。代码展示了Flink数据集API的使用方法。 下面案例和更多案例的完整源码可以参见Flink源码中的flink-examples-batch和 flink-examples-streaming模块。
4051 0
|
SQL 运维 监控
Apache Flink 进阶(八):详解 Metrics 原理与实战
本文由 Apache Flink Contributor 刘彪分享,本文对两大问题进行了详细的介绍,即什么是 Metrics、如何使用 Metrics,并对 Metrics 监控实战进行解释说明。
Apache Flink 进阶(八):详解 Metrics 原理与实战

推荐镜像

更多