From 4de0d8c0cb55803c0dfca04911df303581e145ef Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 27 Aug 2021 00:37:31 +0200 Subject: promethues server role support for openwrt --- roles/monitoring/prometheus/server/defaults/main/main.yml | 3 ++- .../prometheus/server/defaults/main/rules_openwrt.yml | 3 +++ .../prometheus/server/templates/job-snippets/default.j2 | 13 +++++++++++++ .../prometheus/server/templates/job-snippets/openwrt.j2 | 5 +++++ .../prometheus/server/templates/prometheus.yml.j2 | 14 +------------- 5 files changed, 24 insertions(+), 14 deletions(-) create mode 100644 roles/monitoring/prometheus/server/defaults/main/rules_openwrt.yml create mode 100644 roles/monitoring/prometheus/server/templates/job-snippets/default.j2 create mode 100644 roles/monitoring/prometheus/server/templates/job-snippets/openwrt.j2 (limited to 'roles') diff --git a/roles/monitoring/prometheus/server/defaults/main/main.yml b/roles/monitoring/prometheus/server/defaults/main/main.yml index b109b3b1..98fc5b01 100644 --- a/roles/monitoring/prometheus/server/defaults/main/main.yml +++ b/roles/monitoring/prometheus/server/defaults/main/main.yml @@ -12,7 +12,8 @@ prometheus_server_jobs: prometheus_server_rules: prometheus: "{{ prometheus_server_rules_prometheus + ((prometheus_server_alertmanager is defined) | ternary(prometheus_server_rules_prometheus_alertmanager, [])) + prometheus_server_rules_prometheus_extra }}" - node: "{{ prometheus_server_rules_node + prometheus_server_rules_prometheus_extra }}" + node: "{{ prometheus_server_rules_node + prometheus_server_rules_node_extra }}" + openwrt: "{{ prometheus_server_rules_openwrt + prometheus_server_rules_node_extra }}" # prometheus_server_alertmanager: # url: "127.0.0.1:9093" diff --git a/roles/monitoring/prometheus/server/defaults/main/rules_openwrt.yml b/roles/monitoring/prometheus/server/defaults/main/rules_openwrt.yml new file mode 100644 index 00000000..88d84f31 --- /dev/null +++ b/roles/monitoring/prometheus/server/defaults/main/rules_openwrt.yml @@ -0,0 +1,3 @@ +--- +prometheus_server_rules_openwrt_extra: [] +prometheus_server_rules_openwrt: [] diff --git a/roles/monitoring/prometheus/server/templates/job-snippets/default.j2 b/roles/monitoring/prometheus/server/templates/job-snippets/default.j2 new file mode 100644 index 00000000..87992eeb --- /dev/null +++ b/roles/monitoring/prometheus/server/templates/job-snippets/default.j2 @@ -0,0 +1,13 @@ + - 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" diff --git a/roles/monitoring/prometheus/server/templates/job-snippets/openwrt.j2 b/roles/monitoring/prometheus/server/templates/job-snippets/openwrt.j2 new file mode 100644 index 00000000..493a4fdb --- /dev/null +++ b/roles/monitoring/prometheus/server/templates/job-snippets/openwrt.j2 @@ -0,0 +1,5 @@ + - job_name: '{{ job }}' + scheme: http + file_sd_configs: + - files: + - "/etc/prometheus/jobs/{{ job }}/*.yml" diff --git a/roles/monitoring/prometheus/server/templates/prometheus.yml.j2 b/roles/monitoring/prometheus/server/templates/prometheus.yml.j2 index 6db34920..dbd8bd99 100644 --- a/roles/monitoring/prometheus/server/templates/prometheus.yml.j2 +++ b/roles/monitoring/prometheus/server/templates/prometheus.yml.j2 @@ -37,19 +37,7 @@ scrape_configs: {% 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" +{% include 'job-snippets/' + (lookup('first_found', {'paths': ['templates/job-snippets'], 'files': [job + '.j2', 'default.j2']}) | basename) %}{{ '' }} {% endfor %} {% if prometheus_server_jobs_extra is defined %} -- cgit v1.2.3