配置通知策略
通知策略决定了警报如何路由到联系点。
策略具有树状结构。每个策略可以有一个或多个子策略以及一组标签匹配器。
每个警报(或警报实例)会由默认策略评估,然后由每个子策略评估。通过将警报标签与策略的标签匹配器进行匹配,将警报路由到适当的通知策略。有关更多详细信息,请参阅通知策略中的标签匹配和路由。

当警报实例分配给通知策略时,该通知策略负责:
注意
默认通知策略及其子策略分配给一个
特定的 Alertmanager,它们不能使用来自其他 Alertmanagers 的联系点或静默时间。
编辑默认通知策略
- 在左侧菜单中,点击 Alerts & IRM,然后点击 Alerting。
- 点击 Notification policies。
- 从 Choose Alertmanager 下拉菜单中,选择一个外部 Alertmanager。默认情况下,选中 Grafana Alertmanager。
- 在默认策略部分,点击 … -> Edit。
- 在 Default contact point 中,更新当警报规则与任何特定策略不匹配时发送通知的联系点。
- 在 Group by 中,选择标签以分组警报。如果多个警报匹配此策略,则它们将按所选标签分组,并按组发送通知。有关使用此选项的更多详细信息,请参阅分组通知。
- 在 Timing options 中,设置时间选项以配置何时发送通知。
- Group wait: 等待多久才发送新警报组的第一个通知。默认为 30 秒。
- Group interval: 等待多久才发送有关警报组更改的通知。默认为 5 分钟。
- Repeat interval: 如果警报组自上次通知以来未更改,则等待多久才再次发送通知。默认为 4 小时。
- 点击 Save 保存更改。
添加子策略
您可以在默认策略或现有子策略下创建子策略。
如果您想选择策略的位置,请参阅添加同级策略部分。
在左侧菜单中,点击 Alerts & IRM,然后点击 Alerting。
点击 Notification policies。
从 Choose Alertmanager 下拉菜单中,选择一个 Alertmanager。默认情况下,选中 Grafana Alertmanager。
从默认策略或现有子策略中点击 +New child policy。
在子策略的“匹配标签”部分,添加一个或多个匹配标签规则,以缩小父策略中的特定情况。
例如,默认策略的子策略处理
team=security
警报,或者子策略仅处理父策略中severity=critical
的警报。可选,启用 Continue matching subsequent sibling nodes 以在警报匹配当前策略后继续匹配同级策略。如果启用,多个策略可以处理同一警报。
可选,启用 Override general timings 以设置与父策略不同的时间选项。如果禁用,将继承父策略的时间选项。
点击 Save policy 保存更改。
添加同级策略
在左侧菜单中,点击 Alerts & IRM,然后点击 Alerting。
点击 Notification policies。
找到您要为其创建同级策略的子策略。
点击 Add new policy -> New sibling above 或 New sibling below。
确定哪个策略首先接收警报并设置正确的同级和子策略顺序非常重要。
策略从上到下进行评估。如果找到匹配的策略,系统将继续按显示的顺序评估其子策略。有关更多详细信息,请参阅通知策略路由。
按照添加子策略中步骤 5 及之后的说明进行操作。
搜索策略
Grafana 允许您按以下内容在策略树中进行搜索:
- 标签匹配器
- 联系点
要按联系点搜索,只需从 Search by contact point 下拉菜单中选择一个联系点。界面中将突出显示使用该联系点的策略。
要按标签匹配器搜索,只需在 Search by matchers 输入字段中输入一个有效的匹配器。多个匹配器可以使用逗号 (,
) 组合。
需要注意的是,所有匹配的策略都是精确匹配。Grafana 支持使用正则表达式创建标签匹配器。但在搜索策略时不支正则表达式或部分匹配。
静默时间
静默时间不会从父通知策略继承,必须在每个级别上进行配置。有关说明,请参阅配置静默时间。
示例
警报配置示例。
- 创建一个用于 Slack 通知“默认”联系点,并在默认策略中设置它。
- 编辑默认策略分组,按
cluster
、namespace
和severity
对警报进行分组,以便您收到每个警报规则以及特定的 Kubernetes 集群和命名空间的通知。 - 为来自开发集群的警报创建特定路由,并使用适当的联系点。
- 为具有“critical”严重性的警报创建特定路由,并采用更具侵入性的联系点集成,例如 pager duty 通知。
- 为负责自己待命轮班的特定团队创建特定路由。