# {{ ansible_managed }} global: scrape_interval: 15s evaluation_interval: 15s rule_files: - /etc/prometheus/rules/*.yml {% if prometheus_server_alertmanager is defined %} alerting: alertmanagers: - static_configs: - targets: ['{{ prometheus_server_alertmanager.url }}'] {% if 'path_prefix' in prometheus_server_alertmanager %} path_prefix: '{{ prometheus_server_alertmanager.path_prefix }}' {% endif %} {% endif %} scrape_configs: - job_name: 'prometheus' {% if prometheus_server_web_external_url is defined %} metrics_path: '{{ (prometheus_server_web_external_url | urlsplit('path'), 'metrics') | path_join }}' {% endif %} static_configs: - targets: ['localhost:9090'] labels: instance: "{{ inventory_hostname }}" {% if prometheus_server_alertmanager is defined %} - job_name: 'alertmanager' {% if 'path_prefix' in prometheus_server_alertmanager %} metrics_path: '{{ (prometheus_server_alertmanager.path_prefix, 'metrics') | path_join }}' {% endif %} static_configs: - targets: ['{{ prometheus_server_alertmanager.url }}'] {% endif %} {% for job in prometheus_server_jobs %} - job_name: '{{ job }}' metrics_path: /proxy params: module: - {{ job }} scheme: https tls_config: ca_file: /etc/ssl/prometheus/ca-crt.pem cert_file: /etc/ssl/prometheus/server/scrape-crt.pem key_file: /etc/ssl/prometheus/server/scrape-key.pem file_sd_configs: - files: - "/etc/prometheus/jobs/{{ job }}/*.yml" {% endfor %} {% if prometheus_server_jobs_extra is defined %} {{ prometheus_server_jobs_extra | indent(2) }} {% endif %}