Merge "Generate 'route' config entry with macro"
This commit is contained in:
commit
f67908f290
2 changed files with 37 additions and 8 deletions
|
@ -18,7 +18,7 @@ parameters:
|
||||||
group_wait: 60s
|
group_wait: 60s
|
||||||
group_interval: 5m
|
group_interval: 5m
|
||||||
repeat_interval: 3h
|
repeat_interval: 3h
|
||||||
receiver: HTTP-notification
|
receiver: default
|
||||||
inhibit_rule:
|
inhibit_rule:
|
||||||
InhibitCriticalWhenDown:
|
InhibitCriticalWhenDown:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
@ -42,9 +42,5 @@ parameters:
|
||||||
severity: 'warning'
|
severity: 'warning'
|
||||||
equal: ['region', 'service']
|
equal: ['region', 'service']
|
||||||
receiver:
|
receiver:
|
||||||
HTTP-notification:
|
default:
|
||||||
enabled: true
|
enabled: true
|
||||||
webhook_configs:
|
|
||||||
localhost:
|
|
||||||
url: http://127.0.0.1
|
|
||||||
send_resolved: true
|
|
||||||
|
|
|
@ -1,4 +1,31 @@
|
||||||
{% from "prometheus/map.jinja" import alertmanager with context %}
|
{% from "prometheus/map.jinja" import alertmanager with context %}
|
||||||
|
{%- macro route_entry(route={}) -%}
|
||||||
|
{%- if route.receiver is defined -%}
|
||||||
|
receiver: {{ route.receiver }}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- if route.group_by is defined %}
|
||||||
|
group_by:
|
||||||
|
{%- for group_by in route.group_by %}
|
||||||
|
- {{ group_by }}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- endif %}
|
||||||
|
{%- if route.group_interval is defined %}
|
||||||
|
group_interval: {{ route.group_interval }}
|
||||||
|
{%- endif %}
|
||||||
|
{%- if route.group_wait is defined %}
|
||||||
|
group_wait: {{ route.group_wait }}
|
||||||
|
{%- endif %}
|
||||||
|
{%- if route.repeat_interval is defined %}
|
||||||
|
repeat_interval: {{ route.repeat_interval }}
|
||||||
|
{%- endif %}
|
||||||
|
{%- if route.match_re is defined %}
|
||||||
|
match_re:
|
||||||
|
{%- for match_re in route.match_re %}
|
||||||
|
{{ match_re.label }}: {{ match_re.value }}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- endif %}
|
||||||
|
{%- endmacro -%}
|
||||||
|
|
||||||
global:
|
global:
|
||||||
{%- if alertmanager.config.global is defined %}
|
{%- if alertmanager.config.global is defined %}
|
||||||
{%- if alertmanager.config.global.resolve_timeout is defined %}
|
{%- if alertmanager.config.global.resolve_timeout is defined %}
|
||||||
|
@ -7,8 +34,14 @@ global:
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
route:
|
route:
|
||||||
{%- if alertmanager.config.route is defined %}
|
{%- set config_route = alertmanager.config.get('route', {}) %}
|
||||||
{{ alertmanager.config.route | yaml(False) | indent(2, true) }}
|
{{ route_entry(config_route) | indent(2) }}
|
||||||
|
{%- if config_route.get('routes', {}) %}
|
||||||
|
routes:
|
||||||
|
{%- for route_name, route in config_route.get('routes', {}).iteritems() %}
|
||||||
|
# {{ route_name }}
|
||||||
|
- {{ route_entry(route) | indent(4) }}
|
||||||
|
{%- endfor %}
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
inhibit_rules:
|
inhibit_rules:
|
||||||
|
|
Loading…
Reference in a new issue