普罗米修斯出口商-过滤目标



我正在Go中编写一个Prometheus Exporter,以公开从AIX服务器推送的度量。AIX服务器将它们的度量(以json形式(推送到一个中央监听器(导出程序(,该监听器将它们转换为标准的Prometheus度量,并将它们公开以进行抓取。

我遇到的问题是,度量的主机名是从推送的json中提取的。我将其作为标签存储在每个度量中。例如,njmon_memory_free{lpar="myhostname"}。虽然这是有效的,但它并不理想,因为似乎没有办法将其重新标记为通常的instance标签(njmon_memory_free{instance="myhostname"}(。普罗米修斯重新标记发生在刮擦之前,因此lpar标签不需要重新标记。

一种选择似乎是重写导出器,以便Prometheus服务器探测已定义的目标,每个目标都是lpar。为了实现这一点,我需要一种方法来通过lpar过滤存储的度量,以便只返回与目标/lpar相关的度量。这是一个实用的解决方案,还是我被迫为每个lpar创建一个专用的侦听器或url?

所以我正在修改注释中给出的答案,因为它对作者很有帮助。

  • 使用";实例";出口商的标签,而不是";lpar";(更改导出程序代码(
  • 使用";honor_labels:true"普罗米修斯scrape_config

最新更新