summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chaos-at-home/ch-testvm-phoebe.yml1
-rw-r--r--chaos-at-home/ch-testvm-prometheus.yml3
-rw-r--r--roles/monitoring/prometheus/exporter/meta/main.yml1
-rw-r--r--roles/monitoring/prometheus/exporter/register/filter_plugins/prometheus.py (renamed from roles/monitoring/prometheus/target/filter_plugins/prometheus.py)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/handlers/main.yml (renamed from roles/monitoring/prometheus/target/handlers/main.yml)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/tasks/main.yml67
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/blackbox/probe.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/blackbox/probe.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/generic.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/generic.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/ipmi/remote.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/ipmi/remote.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/nut/ups.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/nut/ups.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/snmp/probe.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/snmp/probe.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/exporter/register/templates/ssl/probe.yml.j2 (renamed from roles/monitoring/prometheus/target/templates/ssl/probe.yml.j2)0
-rw-r--r--roles/monitoring/prometheus/target/tasks/main.yml26
13 files changed, 69 insertions, 29 deletions
diff --git a/chaos-at-home/ch-testvm-phoebe.yml b/chaos-at-home/ch-testvm-phoebe.yml
index 284677f9..29b260c0 100644
--- a/chaos-at-home/ch-testvm-phoebe.yml
+++ b/chaos-at-home/ch-testvm-phoebe.yml
@@ -14,4 +14,3 @@
- role: apt-repo/spreadspace
- role: nginx/base
- role: monitoring/prometheus/exporter
- - role: monitoring/prometheus/target
diff --git a/chaos-at-home/ch-testvm-prometheus.yml b/chaos-at-home/ch-testvm-prometheus.yml
index 29e1e706..2087cdb9 100644
--- a/chaos-at-home/ch-testvm-prometheus.yml
+++ b/chaos-at-home/ch-testvm-prometheus.yml
@@ -15,8 +15,7 @@
- role: nginx/base
- role: monitoring/prometheus/ca
- role: monitoring/prometheus/server
+ - role: monitoring/prometheus/exporter
#- role: monitoring/prometheus/alertmanager
#- role: monitoring/grafana
- role: monitoring/landingpage
- - role: monitoring/prometheus/exporter
- - role: monitoring/prometheus/target
diff --git a/roles/monitoring/prometheus/exporter/meta/main.yml b/roles/monitoring/prometheus/exporter/meta/main.yml
index 21b43396..c0f6e02a 100644
--- a/roles/monitoring/prometheus/exporter/meta/main.yml
+++ b/roles/monitoring/prometheus/exporter/meta/main.yml
@@ -19,3 +19,4 @@ dependencies:
when: "'bind' in (prometheus_exporters_default | union(prometheus_exporters_extra))"
- role: monitoring/prometheus/exporter/snmp
when: "'snmp' in (prometheus_exporters_default | union(prometheus_exporters_extra))"
+ - role: monitoring/prometheus/exporter/register
diff --git a/roles/monitoring/prometheus/target/filter_plugins/prometheus.py b/roles/monitoring/prometheus/exporter/register/filter_plugins/prometheus.py
index c29bce81..c29bce81 100644
--- a/roles/monitoring/prometheus/target/filter_plugins/prometheus.py
+++ b/roles/monitoring/prometheus/exporter/register/filter_plugins/prometheus.py
diff --git a/roles/monitoring/prometheus/target/handlers/main.yml b/roles/monitoring/prometheus/exporter/register/handlers/main.yml
index 1d386481..1d386481 100644
--- a/roles/monitoring/prometheus/target/handlers/main.yml
+++ b/roles/monitoring/prometheus/exporter/register/handlers/main.yml
diff --git a/roles/monitoring/prometheus/exporter/register/tasks/main.yml b/roles/monitoring/prometheus/exporter/register/tasks/main.yml
new file mode 100644
index 00000000..efb24a0f
--- /dev/null
+++ b/roles/monitoring/prometheus/exporter/register/tasks/main.yml
@@ -0,0 +1,67 @@
+---
+# - name: register simple targets
+# loop: "{{ prometheus_server_jobs | select('in', prometheus_exporters_default+prometheus_exporters_extra) }}"
+# delegate_to: "{{ prometheus_server }}"
+# template:
+# src: "{{ lookup('first_found', {'paths': ['templates'], 'files': [item + '.yml.j2', 'generic.yml.j2']}) }}"
+# dest: "/etc/prometheus/targets/{{ item }}/{{ inventory_hostname }}.yml"
+# notify: reload prometheus
+
+
+
+
+
+
+# result = []
+# for job in jobs:
+# multitarget_config_varname = 'prometheus_job_multitarget_' + job.replace('-', '_').replace('/', '__')
+# if multitarget_config_varname in vars:
+# for exporter_hostname, configs in vars[multitarget_config_varname].items():
+# for config in configs:
+# result.append({'job': job, 'instance': config['instance'], 'enabled': True,
+# 'exporter_hostname': exporter_hostname, 'config': config})
+#
+# else:
+# enabled = job in vars['prometheus_exporters_default'] or job in vars['prometheus_exporters_extra']
+# result.append({'job': job, 'instance': vars['inventory_hostname'], 'enabled': enabled})
+# return result
+
+# - loop: "{{ prometheus_server_jobs | replace('-', '_') | replace('/', '__') }}"
+# when: "('prometheus_job_multitarget_' + item) in vars"
+# vars:
+# blub: "{{ vars[item] }}"
+# debug:
+# var: blub
+
+
+# set_fact:
+# "prometheus_job_multitarget_{{ item }}": "{{ vars[item] }}"
+# prometheus_job_multitarget_blackbox__probe: "{{ prometheus_job_multitarget_blackbox__probe }}"
+# prometheus_job_multitarget_ssl__probe: "{{ prometheus_job_multitarget_ssl__probe }}"
+
+
+- name: enable/disable job targets
+ vars:
+ job_targets: "{{ vars | prometheus_job_targets(prometheus_server_jobs) }}"
+ block:
+ - name: install files for enabled targets
+ loop: "{{ job_targets | selectattr('enabled') }}"
+ loop_control:
+ loop_var: target
+ label: "{{ target.job }} -> {{ target.instance }}"
+ delegate_to: "{{ prometheus_server }}"
+ template:
+ src: "{{ lookup('first_found', {'paths': ['templates'], 'files': [target.job + '.yml.j2', 'generic.yml.j2']}) }}"
+ dest: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml"
+ notify: reload prometheus
+
+ - name: remove files for disabled targets
+ loop: "{{ job_targets | rejectattr('enabled') }}"
+ loop_control:
+ loop_var: target
+ label: "{{ target.job }} -> {{ target.instance }}"
+ delegate_to: "{{ prometheus_server }}"
+ file:
+ path: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml"
+ state: absent
+ notify: reload prometheus
diff --git a/roles/monitoring/prometheus/target/templates/blackbox/probe.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/blackbox/probe.yml.j2
index 47e6dceb..47e6dceb 100644
--- a/roles/monitoring/prometheus/target/templates/blackbox/probe.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/blackbox/probe.yml.j2
diff --git a/roles/monitoring/prometheus/target/templates/generic.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/generic.yml.j2
index 341cb45a..341cb45a 100644
--- a/roles/monitoring/prometheus/target/templates/generic.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/generic.yml.j2
diff --git a/roles/monitoring/prometheus/target/templates/ipmi/remote.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/ipmi/remote.yml.j2
index 47e6dceb..47e6dceb 100644
--- a/roles/monitoring/prometheus/target/templates/ipmi/remote.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/ipmi/remote.yml.j2
diff --git a/roles/monitoring/prometheus/target/templates/nut/ups.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/nut/ups.yml.j2
index a25cdfe5..a25cdfe5 100644
--- a/roles/monitoring/prometheus/target/templates/nut/ups.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/nut/ups.yml.j2
diff --git a/roles/monitoring/prometheus/target/templates/snmp/probe.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/snmp/probe.yml.j2
index 47e6dceb..47e6dceb 100644
--- a/roles/monitoring/prometheus/target/templates/snmp/probe.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/snmp/probe.yml.j2
diff --git a/roles/monitoring/prometheus/target/templates/ssl/probe.yml.j2 b/roles/monitoring/prometheus/exporter/register/templates/ssl/probe.yml.j2
index 47e6dceb..47e6dceb 100644
--- a/roles/monitoring/prometheus/target/templates/ssl/probe.yml.j2
+++ b/roles/monitoring/prometheus/exporter/register/templates/ssl/probe.yml.j2
diff --git a/roles/monitoring/prometheus/target/tasks/main.yml b/roles/monitoring/prometheus/target/tasks/main.yml
deleted file mode 100644
index 69ea94f2..00000000
--- a/roles/monitoring/prometheus/target/tasks/main.yml
+++ /dev/null
@@ -1,26 +0,0 @@
----
-- name: enable/disable job targets
- vars:
- job_targets: "{{ vars | prometheus_job_targets(prometheus_server_jobs) }}"
- block:
- - name: install files for enabled targets
- loop: "{{ job_targets | selectattr('enabled') }}"
- loop_control:
- loop_var: target
- label: "{{ target.job }} -> {{ target.instance }}"
- delegate_to: "{{ prometheus_server }}"
- template:
- src: "{{ lookup('first_found', {'paths': ['templates'], 'files': [target.job + '.yml.j2', 'generic.yml.j2']}) }}"
- dest: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml"
- notify: reload prometheus
-
- - name: remove files for disabled targets
- loop: "{{ job_targets | rejectattr('enabled') }}"
- loop_control:
- loop_var: target
- label: "{{ target.job }} -> {{ target.instance }}"
- delegate_to: "{{ prometheus_server }}"
- file:
- path: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml"
- state: absent
- notify: reload prometheus