0

有一些博客文章介绍了 Flink 指标报告系统的高级设计。但是,我仍然不清楚如何收集与 JVM 相关的指标,例如“Status.JVM.Memory.Heap.Used”。

我试图在 Flink 源代码中找到它。MemoryLogger.java 似乎在获取 JVM 相关指标方面做了一些工作。https://github.com/apache/flink/blob/master/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/MemoryLogger.java#L88。但是,仍不清楚指标如何流回 MetricsRegistry。对此的任何指示将不胜感激。

4

1 回答 1

1

Flink 有一个专门的线程来收集每个任务管理器的系统相关指标。

系统指标由 SystemResourcesCounter收集

可以通过以下方式访问 JVM 内存指标ManagementFactory.getMemoryMXBean().getHeapMemoryUsage()

获取 JVM 相关指标的代码 在模块中的MetricUtils.java中。flink-runtime

于 2020-01-16T18:53:47.050 回答