HTTP Discovery
The HTTP target loader can be used to query targets configurations from a remote HTTP server.
It expects a well formatted application/json
body and a code 200 response.
It supports secure connections, basic authentication using a username and password and/or Oauth2 token based authentication.
Configuration#
loader:
type: http
# resource URL, must include the http(s) schema
url:
# watch interval at which the HTTP endpoint is queried again
# to determine if a target was added or deleted.
interval: 60s
# HTTP request timeout
timeout: 50s
# time to wait before the fist HTTP query
start-delay: 0s
# tls config
tls:
# string, path to the CA certificate file,
# this will be used to verify the clients certificates when `skip-verify` is false
ca-file:
# string, client certificate file.
cert-file:
# string, client key file.
key-file:
# boolean, if true, the client will not verify the server
# certificate against the available certificate chain.
skip-verify: false
# username to be used with basic authentication
username:
# password to be used with basic authentication
password:
# token to be used with Oauth2 token based authentication
token:
# auth scheme (default is `Bearer`)
auth-scheme:
# text template
template:
# path to a text template file
template-file:
# if true, registers httpLoader prometheus metrics with the provided
# prometheus registry
enable-metrics: false
# list of actions to run on target discovery
on-add:
# list of actions to run on target removal
on-delete:
# variable dict to pass to actions to be run
vars:
# path to variable file, the variables defined will be passed to the actions to be run
# values in this file will be overwritten by the ones defined in `vars`
vars-file: