[英]How does Flink runtime get task manager JVM metrics like 'Status.JVM.Memory.Heap.Used'?
已经有一些博客文章介绍了 Flink 指标报告系统的高级设计。 但是,我仍然不清楚“Status.JVM.Memory.Heap.Used”等与 JVM 相关的指标是如何收集的。
我试图在 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。 对此的任何指示将不胜感激。
Flink 有一个专门的线程来为每个任务管理器收集系统相关的指标。
系统指标由SystemResourcesCounter收集
JVM 内存指标可以通过ManagementFactory.getMemoryMXBean().getHeapMemoryUsage()
获取 JVM 相关指标的代码在flink-runtime
模块中的MetricUtils.java中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.