Prometheus: defineix una clau API d'objectiu amb http_headers i proxy_url
Combina les http_headers de la recollida amb proxy_url i manté les capçaleres API del servidor d'origen separades de les capçaleres CONNECT enviades a l'intermediari.
Quan un punt final de mètriques HTTPS requereix una clau API i Prometheus ha d'utilitzar un proxy directe, configura la capçalera a la mateixa sol·licitud de recollida. Per a una versió de Prometheus que admet 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']
El fitxer conté la clau API d'objectiu prevista i ha de ser llegible a l'entorn d'execució de Prometheus. En un contenidor, proporciona-la en aquest camí del costat del contenidor.
http_headers col·loca X-API-Key a la sol·licitud cap a metrics.example. A través d'un túnel HTTPS CONNECT normal, aquesta capçalera viatja dins del TLS de destinació. L'intermediari proporciona connectivitat i ha de permetre el túnel. Per a un punt final de mètriques accessible públicament on es permeten intermediaris públics, la llista de proxys HTTP ofereix candidats per a proxy_url sense compte; manté la clau API a la sol·licitud de destinació.
proxy_connect_header té una altra destinació: l'intermediari rep aquestes capçaleres en el CONNECT. Posar-hi una clau API d'objectiu no la lliura com a capçalera de sol·licitud HTTPS al servidor de mètriques.
Manté el nom d'amfitrió i el camí reals de les mètriques a la configuració de recollida. Prometheus també protegeix les capçaleres que estableix ell mateix de substitucions arbitràries, així que per a aquesta clau API utilitza els camps de capçalera personalitzada admesos.