我正在用 Go 编写Prometheus Exporter以公开从 AIX 服务器推送的指标。AIX 服务器将它们的指标(以 json 格式)推送到中央侦听器(导出程序),该侦听器将它们转换为标准 Prometheus 指标并公开它们以供抓取。我遇到的问题是指标的主机名是从推送的 json 中提取的。我将其作为标签存储在每个指标中。例如 njmon_memory_free{lpar="myhostname"}。虽然这可行,但它并不理想,因为似乎没有办法将其重新标记为通常的instance标签 (njmon_memory_free{instance="myhostname"}。Prometheus 重新标记发生在刮擦之前,因此 lpar 标签不存在被重新标记。一种选择似乎是重写导出器,以便 Prometheus 服务器探测定义的目标,每个目标都是 lpar。为了使它起作用,我需要一种方法来按 lpar 过滤存储的指标,以便只返回与目标/lpar 相关的指标。这是一个实用的解决方案还是我被迫为每个 lpar 创建一个专用的侦听器或 url?
1 回答
元芳怎么了
TA贡献1798条经验 获得超7个赞
所以我正在修正我在评论中给出的答案,因为它对作者有帮助。
在导出器中使用“实例”标签,而不是“lpar”(更改导出器代码)
在 Prometheus scrape_config 中使用“honor_labels: true”
- 1 回答
- 0 关注
- 177 浏览
添加回答
举报
0/150
提交
取消