Alerting
This Helm chart is designed to help configure alerting system, AlertManager for now.
It consists of several sections.
Sections | Description |
---|---|
route | Alertmanager route definition which will be added to the generated Alertmanager configuration as a first-level route. |
receivers | Receiver defines one or more notification integrations |
inhibitRules | Inhibit rules used to silent relevant alerts (#FIXME: not ready yet) |
prometheusRule | Simplifies creating PrometheusRules resources |
TL;DR, How to use this chart?
Simple example
route:
routes:
- receiver: chat
matchers:
- name: namespace
value: prod-.+
receivers:
chat:
webhookConfigs:
- url: https://chat.example.com/hooks/XC6ptt3jceSeu4NJC/7KWt5iKYYegxPHchTfX6uyzmJ8wKnGkWEp8TWAeiN3DmAKqa
sendResolved: true
Route
Alertmanager route definition which will be added to the generated Alertmanager configuration as a first-level route.
Parameter | Type | Description | Default |
---|---|---|---|
receiver | string | (Required) Name of the receiver for this route. If not empty, it should be listed in the receivers section. | -- |
continue | boolean | Boolean indicating whether an alert should continue matching subsequent sibling nodes | false |
groupBy | list of strings | List of labels to group by | |
groupInterval | string | How long to wait before sending an updated notification. Must match [0-9]+(ms\s\m\h) | |
groupWait | string | How long to wait before sending the initial notification. Must match [0-9]+(ms\s\m\h) | |
matchers | list | List of matchers that the alert’s labels should match. | |
matchers[].name | string | Label to match | |
matchers[].value | string | Label value to match | |
matchers[].regex | boolean | Whether to match on equality (false) or regular-expression (true) | false |
matchLabels | mapping | Mapping of label to add to matchers, It will be treated as regex matcher if have characters other than A-Za-z0-9_- | |
repeatInterval | string | How long to wait before repeating the last notification. Must match the regular expression [0-9]+(ms\s\m\h) | |
routes | list of route | Child routes |
Receivers
Receiver defines one or more notification integrations. it is a list if items with following properties.
Parameter | Type | Description | Default |
---|---|---|---|
name | string | (Required) Receiver name | |
emailConfigs | list of emailConfigs | List of Email configurations | |
slackConfigs | list of slackConfigs | List of Slack configurations | |
webhookConfigs | list of webhookConfigs | List of webhook configurations |
emailConfigs
Receiver Email configurations
#FIXME: complete the table
Parameter | Type | Description | Default |
---|---|---|---|
authIdentity | string | ||
authPassword | object | ||
authSecret | object | ||
authUsername | string | ||
from | string | ||
headers | list | ||
hello | string | ||
html | string | ||
requireTLS | string | ||
sendResolved | string | ||
smarthost | string | ||
text | string | ||
tlsConfig | object | ||
to | string |
slackConfigs
Receiver Slack configurations
#FIXME: complete the table
Parameter | Type | Description | Default |
---|---|---|---|
actions | |||
apiURL | |||
callbackId | |||
channel | |||
color | |||
fallback | |||
fields | |||
footer | |||
httpConfig | |||
iconEmoji | |||
iconURL | |||
imageURL | |||
linkNames | |||
mrkdwnIn | |||
pretext | |||
sendResolved | |||
shortFields | |||
text | |||
thumbURL | |||
title | |||
titleLink | |||
username |
webhookConfigs
Receiver Webhook configurations
#FIXME: complete the table
Parameter | Type | Description | Default |
---|---|---|---|
httpConfig | |||
maxAlerts | |||
sendResolved | |||
url | |||
urlSecret |
inhibitRules
List of inhibition rules. (The rules will only apply to alerts matching the resource’s namespace.)?
Parameter | Type | Description | Default |
---|---|---|---|
equal | string | Labels that must have an equal value in the source and target alert for the inhibition to take effect. | |
sourceMatch | list | Matchers for which one or more alerts have to exist for the inhibition to take effect | |
sourceMatch[].name | string | Label to match | |
sourceMatch[].value | string | Label value to match | |
sourceMatch[].regex | boolean | Whether to match on equality (false) or regular-expression (true) | false |
sourceMatchLabels | mapping | Mapping of label to add to sourceMatch , It will be treated as regex matcher if have characters other than A-Za-z0-9_- | |
targetMatch | list | Matchers that have to be fulfilled in the alerts to be muted. | |
targetMatch[].name | string | Label to match | |
targetMatch[].value | string | Label value to match | |
targetMatch[].regex | boolean | Whether to match on equality (false) or regular-expression (true) | false |
targetMatchLabels | mapping | Mapping of label to add to targetMatch , It will be treated as regex matcher if have characters other than A-Za-z0-9_- |
PrometheusRule
Section: prometheusRule
#FIXME: incomplete contents
Parameter | Type | Description | Default |
---|---|---|---|
enabled | boolean | Enables this prometheusrule | true |
tpl | string | Treat rules as helm template | false |
interval | positive integer | Interval between each time prometheusRule.rules are run | -- |
grafanaDomain | string | grafana domain for connection from prometheus to grafana | -- |
rules | list | Prometheus Rules | -- |
rules.expr | integer or string | (Required) The expression to be run #FIXME | -- |
rules.record | string | Record name to save expr result | -- |
rules.for | string | How long to wait before raising the alert. Must match the regular expression [0-9]+(ms\s\m\h) | -- |
rules.labels | mappings | Labels for this rule | -- |
rules.annotations | mappings | Annotations for this rule | -- |
last update: 2022-01-24