文章目录
本文将详细介绍下flink中的指标核心模块,了解flink中定义的Metric类型,以及是如何分组组织Metric的。主要围绕flink源码中的flink-metrics-core模块展开。后面介绍下flink中的常见指标项。
1. flink-metrics-core
- Metric
常见的指标类型有Gauge、Count、Meter、Histogram,flink 自定义了 Metric 类。

- MetricConfig
存取flink指标相关配置的工具类,继承Properties,添加了直接读取string、int、long、float、double、boolean配置值的方法。

- MetricGroup
Metric 在 flink 内部以 Group 的方式组织,有多层结构,Metric Group + Metric Name 是 Metric 的唯一标识。
TaskManagerMetricGroup
•TaskManagerJobMetricGroup
•TaskMetricGroup
•TaskIOMetricGroup
•OperatorMetricGroup
•${User-defined Group} / ${User-defined Metrics}
•OperatorIOMetricGroup
•JobManagerMetricGroup
•JobManagerJobMetricGroup
可以根据需要埋点自定义指标:
- 添加一个统计脏数据的指标,指标名为flink_taskmanager_job_task_operator_dtDirtyData :
// 从 RichFunction 中 getRuntimeContext()
dirtyDataCounter = runtimeContext.getMetricGroup().counter(MetricConstant.DT_DIRTY_DATA_COUNTER);<

本文详细剖析了Flink的flink-metrics-core模块,探讨了Metric类型如Gauge、Count、Meter和Histogram,以及它们在Flink中的组织结构。MetricGroup以多层结构组织,提供了自定义指标的能力。文章还概述了Flink中的关键指标项,包括Overview、Checkpoint、Watermark、BackPressure、Kafka Connector和JVM相关的监控指标。
最低0.47元/天 解锁文章
1998

被折叠的 条评论
为什么被折叠?



