繁体   English   中英

普罗米修斯刮/公制与自定义 header

[英]Prometheus scrape /metric with custom header

我有一个将由 Prometheus 监控的应用程序,但该应用程序需要自定义 header 密钥,例如:

x-auth-token: <customrandomtoken>

我应该如何处理 prometheus.yml?

Prometheus 本身无法定义自定义标头以到达导出器。 此 GitHub 问题中讨论了添加该功能的想法。 Tl;博士:如果您需要自定义 header,请使用正向或反向代理注入它。

prometheus-blackbox-exporter标签表明问题是关于制作探针的导出器,这是一个单独的东西,它确实有一种设置标头的方法。 只是,它不会抓取指标,它会生成它们

Blackbox 导出器有它自己的配置文件,它由模块组成。 模块是一组参数,定义了如何进行探测以及预期的结果。 下面是一个查找 200-299 响应代码并使用X-Auth-Token header 的模块示例:

modules:
  http_2xx_with_header:
    prober: http
    http:
      headers:
        X-Auth-Token: skdjfh98732hjf22exampletoken

可以在此处找到更多示例,并在此处找到配置选项列表。

当您让 blackbox exporter 加载新配置时,您还需要调整 Prometheus 配置:

scrape_configs:
  - job_name: 'blackbox'
    metrics_path: /probe
    params:
      module: [http_2xx_with_header]  # <- Here goes the name of the new module
    static_configs:
      - targets:
        - http://prometheus.io
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 127.0.0.1:9115

Prometheus 不支持指定自定义 HTTP 标头,该标头必须与每个抓取请求一起发送到抓取目标:(但是,它支持通过authorization和在scrape_config部分的basic_auth选项指定Authorization header。

例如,以下配置指示 Prometheus 发送Authorization: My-Auth my-super-secret header 每个抓取请求到http://localhost:8428/metrics

scrape_configs:
- job_name: foo
  authorization:
    type: "My-Auth"
    credentials: "my-super-secret"
  static_configs:
  - targets: ["localhost:8428"]

PS 如果您仍然需要将自定义 http 标头与每个请求一起发送到远程目标,请查看vmagent - 监控代理,它了解 Prometheus 抓取配置并可以抓取 Prometheus 目标。 这是我从事的一个项目。 它在 Prometheus 的标准scrape_configs之上提供了附加功能,包括headers选项 - 请参阅这些文档 headers选项允许指定任意数量的附加 http 标头,这些标头需要发送到抓取目标。 例如,以下配置指示发送x-auth-token: <customrandomtoken> http header 每个请求都发送到http://foobar:1234 :

scrape_configs:
- job_name: foo
  headers:
  - "x-auth-token: <customrandomtoken>"
  static_configs:
  - targets: ["foobar:1234"]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM