78 lines
2.8 KiB
Django/Jinja
78 lines
2.8 KiB
Django/Jinja
- job_name: "prometheus-agent - node-exporter : {{ inventory_hostname }}"
|
|
scheme: https
|
|
{% for i in ['scrape_timeout', 'scrape_interval'] if prometheus_agent[i] %}
|
|
{{ i }}: {{ prometheus_agent[i] }}
|
|
{% endfor %}
|
|
static_configs:
|
|
- targets:
|
|
- {{ inventory_hostname }}:{{ prometheus_agent.scrapers[item].nodeexporter }}
|
|
labels: {{ merged_prometheus_labels|to_json }}
|
|
tls_config:
|
|
ca_file: /etc/prometheus/targetcerts/{{ inventory_hostname }}.crt
|
|
cert_file: /etc/ssl/prometheus_scraper.crt
|
|
key_file: /etc/ssl/private/prometheus_scraper.key
|
|
relabel_configs:
|
|
- source_labels: [__address__]
|
|
regex: '([^:]+):\d+'
|
|
target_label: instance
|
|
- replacement: 'node'
|
|
target_label: job
|
|
|
|
{% if prometheus_agent.scrapers[item].blackbox and prometheus_agent.agents.blackbox.enable %}
|
|
{% for j in prometheus_agent.agents.blackbox.jobs %}
|
|
{% set job=prometheus_agent.agents.blackbox.jobs[j] %}
|
|
- job_name: "prometheus-agent - blackbox - {{ j }} : {{ inventory_hostname }}"
|
|
scheme: https
|
|
metrics_path: /probe
|
|
{% for i in ['scrape_timeout', 'scrape_interval'] if (prometheus_agent|combine(job))[i] %}
|
|
{{ i }}: {{ (prometheus_agent|combine(job))[i] }}
|
|
{% endfor %}
|
|
params:
|
|
module: [{{ job.module }}]
|
|
static_configs:
|
|
- targets:
|
|
{% for t in job.targets %}
|
|
- {{ t }}
|
|
{% endfor %}
|
|
labels: {{ merged_prometheus_labels|combine(job.labels)|to_json }}
|
|
tls_config:
|
|
ca_file: /etc/prometheus/targetcerts/{{ inventory_hostname }}.crt
|
|
cert_file: /etc/ssl/prometheus_scraper.crt
|
|
key_file: /etc/ssl/private/prometheus_scraper.key
|
|
relabel_configs:
|
|
- source_labels: [__address__]
|
|
target_label: __param_target
|
|
- source_labels: [__param_target]
|
|
target_label: target
|
|
- replacement: 'blackbox'
|
|
target_label: job
|
|
- replacement: '{{ inventory_hostname }}'
|
|
target_label: instance
|
|
- replacement: '{{ job.module }}'
|
|
target_label: module
|
|
- target_label: __address__
|
|
replacement: {{ inventory_hostname }}:{{ prometheus_agent.scrapers[item].blackbox }}
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
{% for j in prometheus_agent.scrapers[item].proxy|d({}) %}
|
|
- job_name: "prometheus-agent - proxy - {{ j }} : {{ inventory_hostname }}"
|
|
scheme: https
|
|
{% for i in ['scrape_timeout', 'scrape_interval'] if prometheus_agent[i] %}
|
|
{{ i }}: {{ prometheus_agent[i] }}
|
|
{% endfor %}
|
|
static_configs:
|
|
- targets:
|
|
- {{ inventory_hostname }}:{{ prometheus_agent.scrapers[item].proxy[j] }}
|
|
labels: {{ merged_prometheus_labels|to_json }}
|
|
tls_config:
|
|
ca_file: /etc/prometheus/targetcerts/{{ inventory_hostname }}.crt
|
|
cert_file: /etc/ssl/prometheus_scraper.crt
|
|
key_file: /etc/ssl/private/prometheus_scraper.key
|
|
relabel_configs:
|
|
- source_labels: [__address__]
|
|
regex: '([^:]+):\d+'
|
|
target_label: instance
|
|
- replacement: '{{ prometheus_agent.agents.proxy.mappings[j].job }}'
|
|
target_label: job
|
|
{% endfor %}
|