为什么 Flink 使用 Pushgateway 而不是 Prometheus 通常的 pull 模型进行一般指标收集?

YuFeng Shen

我们可以看到,在将 Flink Metrics 暴露给 Prometheus 等外部系统时,Flink 使用 Pushgateway 而不是 Prometheus 通常的 pull 模型进行一般指标收集。

@Override
public void report() {
    try {
        pushGateway.push(CollectorRegistry.defaultRegistry, jobName);
    } catch (Exception e) {
        log.warn("Failed to push metrics to PushGateway with jobName {}.", jobName, e);
    }
}

https://github.com/apache/flink/blob/master/flink-metrics/flink-metrics-prometheus/src/main/java/org/apache/flink/metrics/prometheus/PrometheusPushGatewayReporter.java

然而,从下面的 Prometheus 官方文档中,它指出“Prometheus 从检测作业中直接或通过中介推送网关为短期作业抓取指标”,显然 Flink Streaming 作业不是短期作业,那么为什么 Flink 使用 Pushgateway而不是普罗米修斯通常用于一般指标收集的拉模型?

https://prometheus.io/docs/introduction/overview/

大卫·安德森

Flink 提供PrometheusPushGatewayReporter和通常更合适的基于拉取的PrometheusReporterPrometheus 在 Flink 用户中非常受欢迎,社区对支持这两种类型的连接很感兴趣。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Python和Prometheus Pushgateway推送指标

使用 Flink Prometheous PushGateway Repoter 但发生 OOM

为什么NodeJ通常使用MongoDB而不是Mysql?

Prometheus Pushgateway的访问控制

从AWS lambda函数将指标推送到Prometheus Pushgateway

为什么我无法在Prometheus仪表板上查看Flink指标?

如何使用Prometheus指标监控Grafana中的Flink背压

为什么台式机GPU通常使用立即模式渲染而不是基于图块的延迟渲染?

为什么要使用“ slim = tf.contrib.slim”而不是通常导入苗条?

为什么通常在IIFE之后(而不是在脚本顶部)“严格使用”?

为什么Prolog使用最一般的统一符而不是简单的统一符

为什么Flink使用Yarn?

为什么使用'='而不是':='?

在 prometheus_pushgateway 中添加标签

为什么通常使用new Parent()而不是Object.create(Parent.prototype)来初始化子代的原型?

为什么函数的return语句不是通常的int []

Apache Flink:为什么选择FsStateBackend而不是MemoryStateBackend?

Prometheus & cadvisor / 使用 cadvisor 只收集一些指标

为什么要在Flink中使用kafka

为什么 iloc 使用 [] 而不是 ()?

为什么Haskell使用->而不是=?

人工神经网络 - 为什么通常在隐藏层使用 sigmoid 激活函数而不是 tanh-sigmoid 激活函数?

Grafana提醒Prometheus / Pushgateway是否有旧数据

如何使用Flink指标

为什么Scala使用一会而不是使用`find`进行递归

为什么通常不使用正算术表示形式?

为什么--autostash选项不起作用??? (与git pull --rebase一起使用)

为什么x86通常不允许目标寄存器不是第一个源寄存器?

为什么WebRTC使用候选对而不是一个IP +端口对进行双向通信