prometheus config: Support mixed http and https scraping

pull/157/head
Mike Lang 5 years ago
parent 94d81d708f
commit 8a65d18f74

@ -1,7 +1,11 @@
local hosts = {
// name: ["host:port", role]
// See overview.jsonnet for role explanations.
mynode: ["localhost:8080", "replica"]
local hosts_by_scheme = {
http: {
// name: ["host:port", role]
// See overview.jsonnet for role explanations.
mynode: ["localhost:8080", "replica"]
},
https: {
},
};
local services = [
"restreamer",
@ -22,23 +26,28 @@ local services = [
{
job_name: "prometheus",
static_configs: [
{targets: ["localhost:9090"], labels: {instance: "prometheus"}}
{targets: ["localhost:9090"], labels: {instance: "prometheus", service: "prometheus"}},
],
},
] + [
{
job_name: service,
metrics_path: "/metrics/%s" % service,
static_configs: [
{
targets: [hosts[host][0]],
labels: {
instance: host,
role: hosts[host][1],
},
} for host in std.objectFields(hosts)
],
}
for service in services
],
] + std.flattenArrays([
[
{
local hosts = hosts_by_scheme[scheme],
job_name: "%s-%s" % [scheme, service],
metrics_path: "/metrics/%s" % service,
scheme: scheme,
static_configs: [
{
targets: [hosts[host][0]],
labels: {
instance: host,
role: hosts[host][1],
},
} for host in std.objectFields(hosts)
],
}
for service in services
]
for scheme in std.objectFields(hosts_by_scheme)
]),
}

Loading…
Cancel
Save