自定义 Flink - Prometheus 指标

Customize Flink - Prometheus metrics

我需要将自定义指标从 Flink 1.10 导出到 Prometheus。我已经创建并运行了自定义指标,但问题是当我打印出来(例如在终端中)以查看指标时,很多指标来自 Flink 而我不需要它们,例如:flink_taskmanager_job_task_Shuffle_Netty_Input_Buffers_inputQueueLength,还有更多。 我只是想将我的自定义指标从 Flink 传播到 Prometheus,然后删除其余指标。 所以,问题:

  1. 有没有办法删除从 Flink 导出的所有指标,只将我的自定义指标保留给 Prometheus?
  2. 有没有办法创建静态变量 task_id 来避免在 Prometheus 中积累大量信息?因为我认为 id 不是固定的,并且应用程序中的每个更改都需要 stop/start,Flink 将创建一个新的 task_id.

我已经能够使用以下方法删除一些标签: "metrics.reporter.cep_reporter.scope.variables.excludes":"job_id;job_name;task_attempt_id;task_attempt_num;task_name;operator_id;operator_name ;subtask_index;tm_id;主机;网络

但这还不够,有 800 多个指标我不需要,例如 JVM,我正在使用另一个 node_exporter 来抓取这些指标,也需要删除这些指标。

如有任何帮助,我们将不胜感激。非常感谢。

免责声明:我没试过这个。

我会尝试设置 user scope on your custom flink metrics, and then configure prometheus to only scrape those metrics