基于flink1.5,我运行flink流作业并将度量标准写入Prometheus,该度量标准在Yarn群集模式下执行。在作业结束时,仅删除了作业管理者的Pushgateway,而taskanger的Pushgateway也未删除。在运行过程中未引发任何异常信息。我发现taskmanagerRunner的closeAsync没有被调用。我添加了一段代码,并清理了两个pushgateway。
taskManager = startTaskManager(
this.configuration,
this.resourceId,
rpcService,
highAvailabilityServices,
heartbeatServices,
metricRegistry,
blobCacheService,
false,
this);
this.terminationFuture = new CompletableFuture<>();
this.shutdown = false;
// trigger delete
Runtime.getRuntime().addShutdownHook(new Thread(()->{
metricRegistry.shutdown();
}));