两年后,我又开始搞flink了!这次又是接手别人的项目,估计又有不少的坑要踩。这不,问题来了。
生产环境的某个job每跑7天就会挂掉,由于没有任何日志,所以不知道发生了什么。我们的flink是跑在yarn上,记录日志的方式有很多,我这里选择flink historyserver。没有historyserver时,flink的web UI只在job运行时能用,开启historyserver之后就算job挂掉了,也能通过web UI看历史job的元数据和异常信息。
我用的flink版本是1.14.0,废话少说,开始操作。
创建HDFS目录
首先,创建HDFS目录,用来保存history数据。
hdfs dfs -mkdir /completedjobs
flink不会自动创建目录,如果不提前创建会报错:
java.io.FileNotFoundException: File hdfs:/completedjobs does not exist.
我看到好多资料把文件夹取名叫completed-jobs,我一开始也是用这个名字,结果给我抛了个异常: