Prometheus metrics_path中的问号被编码

时间:2016-10-21 09:00:33

标签: prometheus

因为Prometheus仅支持json中的文本度量和许多工具返回指标(如Finatra,Spring Boot),所以我创建了一个简单的代理,将json转换为文本。因为我想将它用于多个源,所以通过查询参数设置要从中检索实际度量的目标。

指标网址如下所示:/metrics?prefix=finatra&url=http:// :9990/admin/metrics.json

这在浏览器或卷曲中工作正常。 但是,在普罗米修斯的'?'被编码为'%3F',因此请求失败:/metrics%3Fprefix=finatra&url=http:// :9990/admin/metrics.json

如何防止普罗米修斯编码'?'? 这是普罗米修斯的错误吗? 我已经尝试用'%'或'\'转义,使用unicode等,但仍然没有运气。

1 个答案:

答案 0 :(得分:6)

此行为是正确的,因为指标路径是路径 - 而不是协议,主机和端口上的任意后缀。

您正在寻找params配置选项:

scrape_configs:
  - job_name: 'somename'
    params:
      prefix: ['finatra']
      url: ['http://:9090/admin/metrics.json']