完整译文请访问:http://www.coderdocument.com/docs/prometheus/v2.14/alerting/notification_template_reference.html。
Prometheus创建并向Alertmanager发送告警,Alertmanager根据标签向不同的接收者发送通知。接收者可以是许多集成中的一个,包括:Slack、PagerDuty、电子邮件,或通过通用webhook接口的自定义集成。
发送给接收者的通知是通过模板构造的。Alertmanager提供了默认模板,但是也可以定制它们。为了避免混淆,必须注意Alertmanager模板与Prometheus中的模板是不同的,Prometheus模板还包括告警规则标签或注解中的模板。
Alertmanager的通知模板基于Go模板系统。注意,有些字段被计算为文本,有些字段被计算为HTML,这会影响转义。
数据结构
Data
data
是传递给通知模板和webhook推送的结构。
名称 | 类型 | 说明 |
---|---|---|
Receiver | string | 定义通知将发送到的接收者的名称(slack、email等)。 |
Status | string | 如果至少有一个警报正在触发,则定义为触发,否则为解析。 |
Alerts | Alert | 该组中所有告警对象的列表(参见下面)。 |
GroupLabels | KV | 分行告警的标签。 |
CommonLabels | KV | 所有告警的公共标签。 |
CommonAnnotations | KV | 所有告警的公共注解集合。用于有关告警的更长的附加信息字符串。 |
ExternalURL | string | Alertmanaer发送通知的反向链接。 |
Alerts
类型设置用于过滤告警:
Alerts.Firing
:返回当前在此组中触发告警对象的列表。Alerts.Resolved
:返回此组中已解析的告警对象的列表。
完整译文请访问:http://www.coderdocument.com/docs/prometheus/v2.14/alerting/notification_template_reference.html。