普罗米修斯可以刮擦目标吗?

时间:2019-09-12 09:42:59

标签: kubernetes monitoring prometheus

我需要普罗米修斯一个接一个地刮擦几个mongodb导出器,以便计算有效的复制滞后。但是,目标之间的刮擦时间相差数十秒,因此复制延迟无法计算。

职位信息如下:

- job_name: mongo-storage
  honor_timestamps: true
  scrape_interval: 1m
  scrape_timeout: 10s
  metrics_path: /metrics
  scheme: http
  static_configs:
  - targets:
    - mongo-1a-exporter.monitor:9216
    - mongo-2a-exporter.monitor:9216
    - mongo-3a-exporter.monitor:9216
    - mongos-exporter.monitor:9216
    - mongo-1b-exporter.monitor:9216
    - mongo-2b-exporter.monitor:9216
    - mongo-3b-exporter.monitor:9216
    labels:
      cluster: mongo-storage

2 个答案:

答案 0 :(得分:2)

这是不可能的,Prometheus不保证刮擦或规则评估的阶段。这也不是您应该依赖的东西,因为它非常脆弱。

我的目的是了解刮擦间隔内的延迟,而不是试图使其完美。您通常会关心复制是否完全中断,而不是复制是否稍有延迟。心跳作业也有帮助。

答案 1 :(得分:1)

这通常不适用于普罗米修斯...

但是,可能可以利用prometheus/pushgateway来实现所需的功能。我的想法是,您编写一个脚本/工具以同步的方式(线程/叉/其他)来抓取mongo导出程序,然后将这些度量标准推送到prometheus/pushgateway实例中。

然后配置prometheus来抓取prometheus/pushgateway而不是mongo导出器,并且由于所有指标都在一个端点中,因此它们将始终保持同步并避免在更新方面出现任何滞后。

希望这会有所帮助。