Når et HTTPS-målepunkt krever en API-nøkkel og Prometheus må bruke en videresendt proxy, settes headeren på selve skrapeforespørselen. For en Prometheus-versjon som støtter http_headers:

scrape_configs:
  - job_name: secured_metrics
    scheme: https
    metrics_path: /metrics
    proxy_url: http://proxy.example:8080
    http_headers:
      X-API-Key:
        files:
          - /etc/prometheus/secrets/metrics-api-key
    static_configs:
      - targets: ['metrics.example:443']

Filen inneholder den tiltenkte mål-API-nøkkelen og må være lesbar i Prometheus' kjøremiljø. I en container må den være tilgjengelig på den containerinterne stien.

http_headers setter X-API-Key på forespørselen til metrics.example. Gjennom en vanlig HTTPS CONNECT-tunnel reiser headeren inne i destinasjonens TLS. Mellomleddet leverer tilkoblingen og må tillate tunnelen. For et offentlig tilgjengelig målepunkt der offentlige mellomledd er tillatt, gir HTTP-proxy-listen kandidater for proxy_url uten konto; hold API-nøkkelen på forespørselen til destinasjonen.

proxy_connect_header har en annen destinasjon: mellomleddet mottar disse headerne ved CONNECT. Å plassere en mål-API-nøkkel der leverer den ikke som HTTPS-forespørselsheader til måleserveren.

Hold det faktiske vertsnavnet og stien for målepunktet i skrapekonfigurasjonen. Prometheus beskytter også headerne det setter selv mot vilkårlige overstyringer, så bruk de støttede feltene for egendefinerte headere for denne API-nøkkelen.

Relaterte artikler