通知管理
目录
功能概览主要功能通知服务器企业通讯工具服务器邮件服务器Webhook 类型服务器为 Webhook 通知配置自定义请求头接收组将接收组与 Header Secret 关联通知模板创建模板引用变量电子邮件中的特殊格式标记语言通知规则前提条件操作步骤为项目设置通知规则前提条件操作步骤功能概览
通过通知功能,您可以将平台的监控和告警能力集成起来,及时向通知接收人发送预警信息,提醒相关人员采取必要措施以解决问题或避免故障。
主要功能
- 通知服务器:通知服务器提供向平台上的接收组发送通知消息的服务,例如邮件服务器。
- 接收组:接收组是具有相似逻辑特征的一组通知接收人,通过对接收通知消息的实体进行分类,可以降低维护成本。
- 通知模板:通知模板是一种标准化结构,由自定义内容、内容变量和内容格式参数组成。用于规范通知规则的告警通知消息内容和格式。例如,自定义邮件通知的主题和内容。
- 通知规则:通知规则是一组用于定义如何向特定联系人发送通知消息的规则。在告警、巡检和登录认证等需要通知外部服务的场景中,必须使用通知规则。
通知服务器
通知服务器提供向平台上的接收人发送通知消息的服务。平台当前支持以下通知服务器:
- 企业通讯工具服务器:支持集成企业微信、钉钉和飞书内置应用,用于向个人发送通知。
- 邮件服务器:通过邮件服务器使用电子邮件发送通知。
- Webhook 类型服务器:支持集成企业微信群机器人、钉钉群机器人、飞书群机器人,或向您指定的服务器发送 WebHook。
只能添加一个企业通讯工具服务器。
企业通讯工具服务器
企业微信
-
按照以下示例配置通知服务器参数。填写完成后,切换到 集群管理 > 资源管理 中的
global集群,并创建资源对象。 -
创建完成后,需要在平台的 用户角色管理 > 用户管理 中,或者在用户的 个人信息 中更新用户的 企业微信 ID,以确保用户能够正常接收消息。
钉钉
-
按照以下示例配置通知服务器参数。填写完成后,切换到 集群管理 > 资源管理 中的
global集群,并创建资源对象。 -
创建完成后,需要在平台的 用户角色管理 > 用户管理 中,或者在用户的 个人信息 中更新用户的 钉钉 ID,以确保用户能够正常接收消息。
飞书
-
按照以下示例配置通知服务器参数。填写完成后,切换到 集群管理 > 资源管理 中的
global集群,并创建资源对象。 -
创建完成后,需要在平台的 用户角色管理 > 用户管理 中,或者在用户的 个人信息 中更新用户的 飞书 ID,以确保用户能够正常接收消息。
邮件服务器
-
在左侧导航栏中,单击 平台设置 > 通知服务器。
-
单击 立即配置。
-
参考以下说明配置相关参数。
-
单击 确定。
Webhook 类型服务器
支持集成企业微信群机器人、钉钉群机器人、飞书群机器人,或向您指定的 Webhook 服务器发送 HTTP 请求。
企业微信群机器人
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;如需禁用,请将dHJ1ZQo=替换为ZmFsc2UK,即 false 的 base64 编码值。
钉钉群机器人
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;如需禁用,请将dHJ1ZQo=替换为ZmFsc2UK,即 false 的 base64 编码值。
飞书群机器人
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;如需禁用,请将dHJ1ZQo=替换为ZmFsc2UK,即 false 的 base64 编码值。
Webhook 服务器
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;如需禁用,请将dHJ1ZQo=替换为ZmFsc2UK,即 false 的 base64 编码值。
为 Webhook 通知配置自定义请求头
如果目标 Webhook 端点需要自定义 HTTP 请求头,请先在 cpaas-system 命名空间中创建一个 Secret,后续再将其与接收组关联。
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上创建如下所示的 YAML 文件。 -
将 YAML 文件保存为
webhook-header.yaml,并应用资源。
data下的每个键都用作 HTTP 请求头名称。data下的每个值在应用到集群之前都必须进行 base64 编码。- 如果端点需要多个请求头,请在
data下添加更多键值对。
接收组
接收组是一组具有相似逻辑特征的通知接收人。例如,您可以将运维团队设置为接收组,以便在配置通知规则时进行快速选择和管理。
- 平台支持多种通知服务器,并会根据通知服务器配置展示对应通知类型的相关配置项。
- 如果需要使用 Webhook 类型服务器作为通知接收人,必须在接收组中配置相关 URL。
- 如果 Webhook 端点需要自定义请求头,则必须将接收组关联到
cpaas-system命名空间中类型为NotificationSender的 Secret。
-
在左侧导航栏中,单击 运维中心 > 通知。
-
切换到 接收组 选项卡。
-
单击 创建接收组,并按照以下说明配置相关参数。
-
单击 添加。
将接收组与 Header Secret 关联
如果已配置的 Webhook 端点需要自定义请求头,请将接收组与 为 Webhook 通知配置自定义请求头 中创建的 Secret 关联。
-
在左侧导航栏中,单击 集群管理 > 集群。
-
单击
global集群旁边的操作按钮 > CLI 工具。 -
在
global集群的主节点上编辑对应的接收组(NotificationGroup)资源。 -
向
metadata.annotations添加cpaas.io/notification.webhook.config注解。其值必须为用于自定义请求头的 Secret 名称。
Webhook URL 在接收组中配置,自定义请求头通过引用的 Secret 进行配置。
通知模板
通知模板是一种标准化结构,由自定义内容、内容变量和内容格式参数组成。用于规范通知规则的告警通知消息内容和格式。
平台管理员或运维人员可以根据不同的告警通知方式设置通知模板,自定义通知消息的内容和格式,帮助用户快速获取关键告警信息并提升运维效率。
平台管理员可以将平台通知模板设为公开。公开模板可在项目通知规则中被选用,因此项目管理员无需在每个项目中重复创建模板,即可复用平台维护的消息格式。
平台支持多种通知服务器,并会根据通知服务器配置展示对应通知类型的模板。如果未配置通知服务器,则默认不会展示对应的通知模板。
创建模板
-
在左侧导航栏中,单击 运维中心 > 通知。
-
切换到 模板 选项卡。
-
单击 创建模板。
-
在 基本信息 区域中,配置以下参数。
-
在 模板配置 区域中,引用不同的模板类型以配置变量和内容格式参数。
- 模板内容只能由变量、变量显示名称以及平台支持的特殊格式标记语言组成。只要符合语法规则,变量和其他元素可以自由组合。
- 模板中只能使用平台支持的变量。您可以修改变量显示名称和内容格式,但不能修改变量本身。请参见 引用变量 和 电子邮件中的特殊格式标记语言。
- 平台根据实际运维场景,为各种通知类型提供默认通知模板内容,可满足大多数通知消息设置需求。如无特殊要求,您可以直接使用默认模板内容。
- 如果平台公开模板重新设为私有,它仍会在平台公开模板组中可见,但会处于禁用状态。该模板不能用于新建通知规则,但已在使用该模板的现有通知规则仍可继续发送通知。
- 如果平台公开模板被任何项目通知规则引用,则会受到删除保护。删除模板前,请先移除所有引用。
- 单击 创建。
引用变量
变量是通知消息(NotificationMessage)中标签或注解的键,格式为 {{.labelKey}}。为了方便用户快速获取关键信息,可以为变量设置自定义显示名称,例如:告警级别: {{ .externalLabels.severity }}。
当通知规则基于通知模板向用户发送通知消息时,模板中的变量会引用通知消息中对应的标签值(实际监控数据)。最终,监控数据将以标准化的内容格式发送给用户。
平台默认提供以下基础变量:
电子邮件中的特殊格式标记语言
在电子邮件通知中,下表列出了常见的 HTML 格式标签及其说明:
通知规则
通知规则是一组用于定义如何向特定联系人发送通知消息的规则。在告警、巡检和登录认证等需要通知外部服务的场景中,必须使用通知规则。
平台支持多种通知服务器,并会根据通知服务器配置展示对应通知类型的通知方式。如果未配置通知服务器,则默认不会展示对应的通知方式。
前提条件
要使用 企业通讯工具服务器 通知联系人,用户必须先在 个人信息 中填写其 WeChat Work ID,以修改自己的联系信息。
操作步骤
-
在左侧导航栏中,单击 运维中心 > 通知。
-
单击 创建规则,并按照以下说明配置相关参数。
-
单击 创建。
为项目设置通知规则
平台的通知规则、通知模板和接收组默认按租户隔离。作为项目管理员,您无法查看或使用其他项目或平台管理员配置的通知规则、私有通知模板或接收组。平台公开通知模板除外:您可以在创建或更新通知规则时选择它们,但不能在项目视图中编辑或删除它们。
前提条件
-
您已联系平台管理员完成通知服务器配置。
-
如果需要通过企业通讯工具进行通知,还需要确保待通知联系人已在 个人信息 中正确配置其通讯工具 ID。
操作步骤
-
在 项目管理 视图中,单击 项目名称。
-
在左侧导航栏中,单击 通知。
-
切换到 接收组 选项卡,参考 接收组 创建接收组。
如果您不需要通过接收组管理通知联系人,或者不需要通知 Webhook 类型通知服务器,可以跳过此步骤。