From e7de11cf46a47808b61507ee10b7d15cf10b03ad Mon Sep 17 00:00:00 2001 From: Bartosz Kupidura Date: Wed, 24 May 2017 13:20:21 +0200 Subject: [PATCH] Use builtin autodiscovery of alertmanager Change-Id: I36bdb3a4e90687d32724e5e248d5862567c36f83 Depends-On: I91e23f17858deb2ef937fcd42948641eb371474b --- prometheus/files/prometheus.yml | 19 +++++++++++++++++++ tests/pillar/server.sls | 8 ++++++++ 2 files changed, 27 insertions(+) diff --git a/prometheus/files/prometheus.yml b/prometheus/files/prometheus.yml index dd17832..77bef08 100644 --- a/prometheus/files/prometheus.yml +++ b/prometheus/files/prometheus.yml @@ -5,6 +5,25 @@ global: {{ server.config.global | yaml(False) | indent(2, true) }} {%- endif %} +{%- if server.get('config', {}).get('alertmanager') %} +alerting: + alertmanagers: + {%- for name, alertmanager in server.config.alertmanager.iteritems() %} + {%- if alertmanager.get('enabled', True) %} + # {{ name }} + {%- if alertmanager.static_configs is defined %} + - static_configs: + - targets: {{ alertmanager.static_configs.get('target', [])|yaml }} + {%- elif alertmanager.dns_sd_configs is defined %} + - dns_sd_configs: + - names: {{ alertmanager.dns_sd_configs.get('domain', [])|yaml }} + type: {{ alertmanager.dns_sd_configs.type }} + port: {{ alertmanager.dns_sd_configs.port }} + {%- endif %} + {%- endif %} + {%- endfor %} +{%- endif %} + rule_files: - alerts.yml diff --git a/tests/pillar/server.sls b/tests/pillar/server.sls index 5f2a2d2..64f31f2 100644 --- a/tests/pillar/server.sls +++ b/tests/pillar/server.sls @@ -68,6 +68,14 @@ prometheus: evaluation_interval: "1m" external_labels: region: 'region1' + alertmanager: + docker_swarm_alertmanager: + enabled: true + dns_sd_configs: + domain: + - tasks.monitoring_alertmanager + type: A + port: 9093 docker: host: enabled: true