Flink 在 UI 中显示作业正在运行,但该作业实际上不起作用

时间:2021-05-27 06:32:33

标签: java apache-flink flink-streaming

这是关于一个 flink 作业,它有一个简单的来源,可以从 url 获取数据,然后过滤数据,然后在处理函数中收集数据一段时间 (keyBy),最后处理地图中收集的数据。由于某些原因,即使 flink UI 显示它正在运行,作业也会在几天后停止运行。有什么方法可以知道为什么会有这样的行为,也有什么方法可以知道即使 UI 显示它正在运行,我也可以知道作业是否真的停止了。

附言我怎么知道工作已经停止了??答:它不执行它正在执行的任务。 我检查了日志,但对我理解问题没有多大帮助。

1 个答案:

答案 0 :(得分:0)

听起来作业管理器和任务管理器仍在运行,因为至少正在传递心跳消息。

有许多指标可以说明正在发生的事情:

如果作业正在使用事件时间,则可能是空闲源导致水印不再前进。通过查看源实例中的 numRecordsOutPerSecond 和当前水印,您应该能够在指标中看到这一点。

如果您正在阅读 Kafka(或 Kinesis),请查看 records-lag-max(或 millisBehindLatest)。

如果您启用了检查点,请查看它们是否仍然成功。