Exercice 28
Écrire plusieurs alertes et les router différement selon leurs labels dans les receivers suivants :
- prom-pager
- prom-info
- prom-ticket
Solution
show
#basic.rules:
groups:
- name: example
rules:
- alert: (PXX) Instance down
expr: count(up == 0) >= 1
for: 5s
labels:
severity: page
annotations:
summary: (PXX) Instance down
description: >
(PXX) Instance down {{ range query "up == 0" }}
- {{ .Labels.instance }} - {{ .Labels.job }}
{{ end }}
- alert: (PXX) Instance down
expr: count(up == 0) >= 1
for: 5s
labels:
severity: pager
annotations:
summary: (P11) Instance down
description: >
(PXX) Instance down {{ range query "up == 0" }}
- {{ .Labels.instance }} - {{ .Labels.job }}
{{ end }}
#alertmanager.yml:
global:
#
route:
receiver: 'mattermost'
repeat_interval: 10s
group_interval: 10s
group_wait: 10s
routes:
- match:
severity: ticket
receiver: mattermost-ticket
- match:
severity: info
receiver: mattermost-info
- match:
severity: pager
receiver: mattermost-pager
receivers:
- name: mattermost
slack_configs:
- api_url: "https://chat.datailor.fr/hooks/am7kpp6f8pnq8xat37pap8usqa"
send_resolved: true
title: "(AXX){{ range .Alerts }}{{ .Annotations.summary }}\\n{{ end }}"
text: "(AXX){{ range .Alerts }}{{ .Annotations.description }}\\n{{ end }}"
- name: mattermost-pager
slack_configs:
- api_url: "https://chat.datailor.fr/hooks/bfyy41uny3y39pjmet46hnnijh"
send_resolved: true
title: "(AXX){{ range .Alerts }}{{ .Annotations.summary }}\\n{{ end }}"
text: "(AXX){{ range .Alerts }}{{ .Annotations.description }}\\n{{ end }}"
- name: mattermost-ticket
slack_configs:
- api_url: "https://chat.datailor.fr/hooks/n73mdxdtq3fpd8r4x5zkmauaiy"
send_resolved: true
title: "(AXX){{ range .Alerts }}{{ .Annotations.summary }}\\n{{ end }}"
text: "(AXX){{ range .Alerts }}{{ .Annotations.description }}\\n{{ end }}"
- name: mattermost-info
slack_configs:
- api_url: "https://chat.datailor.fr/hooks/otwsdx3a33df5ctc915hbn5xmc"
send_resolved: true
title: "(AXX){{ range .Alerts }}{{ .Annotations.summary }}\\n{{ end }}"
text: "(AXX){{ range .Alerts }}{{ .Annotations.description }}\\n{{ end }}"