docs: rewrite README with structured overview and quick start guide
Replaces the minimal project description with a comprehensive README including a component overview table, quick start instructions, common Ansible operations, and links to detailed documentation. Aligns with Red Panda Approval™ standards.
This commit is contained in:
148
ansible/pplg/alertmanager.yml.j2
Normal file
148
ansible/pplg/alertmanager.yml.j2
Normal file
@@ -0,0 +1,148 @@
|
||||
global:
|
||||
resolve_timeout: 5m
|
||||
smtp_smarthost: '{{ smtp_host }}:{{ smtp_port }}'
|
||||
smtp_from: '{{ smtp_from }}'
|
||||
smtp_require_tls: false
|
||||
|
||||
route:
|
||||
group_by: ['alertname', 'instance', 'severity']
|
||||
group_wait: 30s
|
||||
group_interval: 5m
|
||||
repeat_interval: 4h
|
||||
receiver: 'email'
|
||||
routes:
|
||||
- match:
|
||||
severity: critical
|
||||
receiver: 'email-critical'
|
||||
continue: true
|
||||
- match:
|
||||
severity: warning
|
||||
receiver: 'email-warning'
|
||||
continue: true
|
||||
- match:
|
||||
severity: info
|
||||
receiver: 'email-info'
|
||||
repeat_interval: 24h
|
||||
|
||||
inhibit_rules:
|
||||
- source_match:
|
||||
severity: 'critical'
|
||||
target_match:
|
||||
severity: 'warning'
|
||||
equal: ['alertname', 'instance']
|
||||
|
||||
receivers:
|
||||
- name: 'email-critical'
|
||||
email_configs:
|
||||
- to: 'hostmaster+critical@ouranos.helu.ca'
|
||||
send_resolved: true
|
||||
html: true
|
||||
headers:
|
||||
Subject: '🚨 [CRITICAL] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
text: |-
|
||||
{{ "{{" }} range .Alerts {{ "}}" }}
|
||||
{{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
|
||||
Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
{{ "{{" }} end {{ "}}" }}
|
||||
|
||||
- name: 'email-warning'
|
||||
email_configs:
|
||||
- to: 'hostmaster+warning@ouranos.helu.ca'
|
||||
send_resolved: true
|
||||
html: true
|
||||
headers:
|
||||
Subject: '⚠️ [WARNING] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
text: |-
|
||||
{{ "{{" }} range .Alerts {{ "}}" }}
|
||||
{{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
|
||||
Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
{{ "{{" }} end {{ "}}" }}
|
||||
|
||||
- name: 'email-info'
|
||||
email_configs:
|
||||
- to: 'hostmaster+info@ouranos.helu.ca'
|
||||
send_resolved: false
|
||||
html: true
|
||||
headers:
|
||||
Subject: '{{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
text: '{{ "{{" }} range .Alerts {{ "}}" }}{{ "{{" }} .Annotations.description {{ "}}" }}{{ "{{" }} end {{ "}}" }}'
|
||||
|
||||
- name: 'email'
|
||||
email_configs:
|
||||
- to: 'hostmaster+alerts@ouranos.helu.ca'
|
||||
send_resolved: true
|
||||
html: true
|
||||
headers:
|
||||
Subject: '[{{ "{{" }} .GroupLabels.severity | default "ALERT" {{ "}}" }}] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
text: |-
|
||||
{{ "{{" }} range .Alerts {{ "}}" }}
|
||||
{{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
|
||||
Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
Severity: {{ "{{" }} .Labels.severity {{ "}}" }}
|
||||
{{ "{{" }} end {{ "}}" }}
|
||||
|
||||
# --- Pushover receivers (disabled for smtp4dev testing) ---
|
||||
# To re-enable: uncomment these receivers and update the route receiver names
|
||||
# from email-*/email back to pushover-*/pushover
|
||||
#
|
||||
# - name: 'pushover-critical'
|
||||
# pushover_configs:
|
||||
# - user_key: '{{ pushover_user_key }}'
|
||||
# token: '{{ pushover_api_token }}'
|
||||
# send_resolved: true
|
||||
# html: true
|
||||
# priority: '2'
|
||||
# retry: 30
|
||||
# expire: 3600
|
||||
# title: '🚨 [CRITICAL] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
# message: |-
|
||||
# {{ "{{" }} range .Alerts {{ "}}" }}
|
||||
# {{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
# Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
# {{ "{{" }} end {{ "}}" }}
|
||||
#
|
||||
# - name: 'pushover-warning'
|
||||
# pushover_configs:
|
||||
# - user_key: '{{ pushover_user_key }}'
|
||||
# token: '{{ pushover_api_token }}'
|
||||
# send_resolved: true
|
||||
# html: true
|
||||
# priority: '1'
|
||||
# retry: 30
|
||||
# expire: 3600
|
||||
# title: '⚠️ [WARNING] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
# message: |-
|
||||
# {{ "{{" }} range .Alerts {{ "}}" }}
|
||||
# {{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
# Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
# {{ "{{" }} end {{ "}}" }}
|
||||
#
|
||||
# - name: 'pushover-info'
|
||||
# pushover_configs:
|
||||
# - user_key: '{{ pushover_user_key }}'
|
||||
# token: '{{ pushover_api_token }}'
|
||||
# send_resolved: false
|
||||
# html: true
|
||||
# priority: '0'
|
||||
# title: '{{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
# message: '{{ "{{" }} range .Alerts {{ "}}" }}{{ "{{" }} .Annotations.description {{ "}}" }}{{ "{{" }} end {{ "}}" }}'
|
||||
#
|
||||
# - name: 'pushover'
|
||||
# pushover_configs:
|
||||
# - user_key: '{{ pushover_user_key }}'
|
||||
# token: '{{ pushover_api_token }}'
|
||||
# send_resolved: true
|
||||
# html: true
|
||||
# priority: '1'
|
||||
# retry: 30
|
||||
# expire: 3600
|
||||
# title: '[{{ "{{" }} .GroupLabels.severity | default "ALERT" {{ "}}" }}] {{ "{{" }} .GroupLabels.alertname {{ "}}" }}'
|
||||
# message: |-
|
||||
# {{ "{{" }} range .Alerts {{ "}}" }}
|
||||
# {{ "{{" }} .Annotations.description {{ "}}" }}
|
||||
# Instance: {{ "{{" }} .Labels.instance {{ "}}" }}
|
||||
# Severity: {{ "{{" }} .Labels.severity {{ "}}" }}
|
||||
# {{ "{{" }} end {{ "}}" }}
|
||||
Reference in New Issue
Block a user