summaryrefslogtreecommitdiff
path: root/roles
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2021-08-27 00:37:31 +0200
committerChristian Pointner <equinox@spreadspace.org>2021-08-27 00:37:31 +0200
commit4de0d8c0cb55803c0dfca04911df303581e145ef (patch)
tree3747db0ca51af3e92625e1b28fcdaf26e266bab7 /roles
parentadd prometheus exporter to ch-router (diff)
promethues server role support for openwrt
Diffstat (limited to 'roles')
-rw-r--r--roles/monitoring/prometheus/server/defaults/main/main.yml3
-rw-r--r--roles/monitoring/prometheus/server/defaults/main/rules_openwrt.yml3
-rw-r--r--roles/monitoring/prometheus/server/templates/job-snippets/default.j213
-rw-r--r--roles/monitoring/prometheus/server/templates/job-snippets/openwrt.j25
-rw-r--r--roles/monitoring/prometheus/server/templates/prometheus.yml.j214
5 files changed, 24 insertions, 14 deletions
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 %}