--- # {{ ansible_managed }} global: # The smarthost and SMTP sender used for mail notifications. {% if alertmanager_smtp_server | length > 0 %} smtp_smarthost: '{{ alertmanager_smtp_server }}:587' smtp_from: '{{ alertmanager_smtp_from }}' {% if alertmanager_smtp_user | length > 0 %} smtp_auth_username: '{{ alertmanager_smtp_user }}' smtp_auth_password: '{{ alertmanager_smtp_pw }}' {% endif %} {% endif %} # The directory from which notification templates are read. templates: - '/etc/alertmanager/template/*.tmpl' # The root route on which each incoming alert enters. route: # The labels by which incoming alerts are grouped together. For example, # multiple alerts coming in for cluster=A and alertname=LatencyHigh would # be batched into a single group. # # To aggregate by all possible labels use '...' as the sole label name. # This effectively disables aggregation entirely, passing through all # alerts as-is. This is unlikely to be what you want, unless you have # a very low alert volume or your upstream notification system performs # its own grouping. Example: group_by: [...] group_by: ['alertname', 'cluster', 'service'] # When a new group of alerts is created by an incoming alert, wait at # least 'group_wait' to send the initial notification. # This way ensures that you get multiple alerts for the same group that start # firing shortly after another are batched together on the first # notification. group_wait: 30s # When the first notification was sent, wait 'group_interval' to send a batch # of new alerts that started firing for that group. group_interval: 5m # If an alert has successfully been sent, wait 'repeat_interval' to # resend them. repeat_interval: 3h # A default receiver receiver: uumas_email # All the above attributes are inherited by all child routes and can # overwritten on each. # The child route trees. routes: {{ alertmanager_routes }} inhibit_rules: - source_matchers: [severity="critical"] target_matchers: [severity="warning"] # Apply inhibition if the alertname is the same. # CAUTION: # If all label names listed in `equal` are missing # from both the source and target alerts, # the inhibition rule will apply! equal: [alertname, cluster, service] receivers: {{ alertmanager_receivers }}