4

我有一个运行多个流作业的 Flink 服务器。这些作业是使用flink run命令启动的,并且基本上会一直运行,直到您停止它们为止。现在我想取消一个特定的工作。当我这样做时flink list,我会得到这样的东西:

------------------ Running/Restarting Jobs -------------------
10.12.2015 08:30:37 : d6aeefaa2295ce122b65037805db0891 : Flink Streaming Job (RUNNING)
10.12.2015 08:44:18 : cfe10aca3435730d09691ff644475467 : Flink Streaming Job (RESTARTING)
10.12.2015 08:55:08 : 4ca359e286d4f5b4de62aee76f4c6389 : Flink Streaming Job (RESTARTING)
10.12.2015 08:57:42 : 1b75acb482f2610039ea2211e094b862 : Flink Streaming Job (RESTARTING)
10.12.2015 09:07:22 : 609993523b0214f52fabfdf09baf419d : Flink Streaming Job (RESTARTING)

使用此输出无法取消正确的作业,因为无法识别哪个作业是哪个作业。所有的工作都只是以Flink Streaming Job作为他们的名字,所以我不知道该选哪个。

有没有办法更改出现的工作名称flink list?如果没有,有没有办法通过命令行获取有关正在运行的作业的附加信息(例如,它是从哪个 JAR 文件开始的,它的主类是什么等)。如果没有,有没有办法从 中获取 Job-ID flink run,所以我可以将它存储在某种 PID 文件中,然后使用该 ID 来取消 Job?

4

1 回答 1

9

StreamExecutionEnvironment.execute()方法允许您设置作业的名称:

// execute program
env.execute("Streaming data into " + topicName + " topic");
于 2015-12-10T14:24:59.693 回答