跳到主要内容
版本:4.x

集群告警

您可以根据需要设置监控指标的告警阈值,当指标超过阈值时,Manager 将通过邮件、聊天软件、Webhook 等方式发送告警通知,提醒您及时处理潜在问题。当您使用邮件作为告警方式时,您需要在 Manager 的配置文件中配置您的邮件服务器。

告警策略配置概述

图片展示了SelectDB Enterprise Manager中新建告警策略的界面。界面中“告警规则”部分被红色框线突出显示,其中“静态配置”和“自定义PromQL”选项被红色箭头指向,分别对应①和②标识。下方“通知”部分被红色框线突出,其中“通知方式”选项被红色箭头指向,对应③标识。最下方“告警通知”部分被红色框线突出,对应④标识。该图片直观呈现了告警策略配置中关键部分的位置,与上下文介绍的告警配置内容相呼应。

告警配置包含以下部分:

页面部分名称解释
告警名称告警规则的名称,支持中英文和特殊符号。
策略类型静态配置:直接使用 Manager 提供的告警指标配置告警。
自定义 PromQL:填写自定义 PromQL 语句。
告警等级用来区分告警严重程度,分为紧急(Critical)、警告(Warn)和提示(Info)。
通知—最小告警间隔时间同一个告警规则两次触发的最小间隔时间,最小值为 1 分钟。
通知—通知方式支持站内信、企业微信群、飞书群、钉钉群、Webhook 和邮箱。其中,邮箱服务器信息需要提前在“服务配置”页面配置。
恢复通知开启后,当告警不再触发时会收到“告警恢复”通知。

新建告警策略

使用内置的告警策略

集群初始化时,Manager 按照最佳实践内置了默认告警模版,您可以对默认的告警策略配置好通知方式之后直接使用。

图片展示的是SelectDB Enterprise Manager监控告警页面。左侧为导航栏,选中“告警”选项。右侧上方有“告警规则”“告警模板”两个选项卡,当前选中“告警规则”。下方列表显示了告警规则,包括“Warn (default)”和“Critical (default)”,其中“Warn (default)”的触发条件为JVM线程数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,且不同节点的节点数大于2000,

新建静态配置的告警策略

静态配置触发条件可以选择手动添加,或者使用模板里面的触发条件进行配置:

  • 手动添加触发条件

    图片展示的是SelectDB Enterprise Manager中新建告警策略时的“编辑告警策略”界面。界面左侧有导航栏,右侧上方有“新建告警策略”标题。关键信息是“数据条件”部分,其中“数据来源”下拉菜单被红色框突出显示,可选择“Cluster Overview”“Host Monitor”“Query Statistics”“Transaction”等数据源。该图片与上下文关系紧密,直观呈现了手动添加触发条件时可选择的数据来源选项。

  • 选择告警模板

    图片展示的是SelectDB Enterprise Manager中新建告警策略时选择告警模板的界面。左侧导航栏选中“告警管理”下的“告警策略”,右侧弹出“告警告警模板”窗口,可选择告警模板,如JVM内存使用率、JVM线程数等。窗口右上角有“取消”和“确定”按钮。该图片与上文“新建告警策略”中“选择告警模板”的内容对应,直观呈现了选择告警模板的操作界面。

配置好触发条件之后,可进行数据预览

图片展示

使用静态配置时,需要您选择各个告警指标项之间的关系是“或”还是“且”,条件准备完毕之后可以点击“数据预览”(图中的②),可以预览到当前选择的多个条件拼接形成的 promQL 表达式,再次点击“预览”(图中的③),可以查看该表达式在 Prometheus 里面执行的结果图

图片展示的是SelectDB Enterprise Manager中新建告警策略时的数据预览界面。左侧为导航栏,选中“告警”下的“新建告警策略”。右侧上方显示“新建告警策略”标题,下方有“告警模板”“静态配置”“自定义PromQL”选项,当前选中“静态配置”。中间是数据预览区域,图表显示了“count(*) by (Cluster, Instance, Instance Type, Heat Monitor / CPU)”的监控数据,横轴为时间,纵轴为数值,有明显的波动。该图与上下文介绍的配置静态配置告警策略后进行数据预览的内容相关,直观呈现了预览效果。

接着配置告警等级、通知方式等信息,保存即可配置成功

新建自定义 PromQL 的告警策略

将准备好的 PormQL 语句填写并预览

图片展示的是SelectDB Enterprise Manager中新建自定义PromQL告警策略的界面。在“表达式”区域,输入了“sum by (instance) : dbrois_te_disk_bytes_read”作为PromQL语句。下方有“数据预览”按钮,可预览当前选择的多个条件拼接形成的promQL表达式。该图片与上文“新建自定义PromQL的告警策略”内容对应,直观呈现了将准备好的PromQL语句填写并预览的操作界面。

图片展示的是SelectDB Enterprise Manager中新建自定义PromQL告警策略的数据预览界面。左侧为导航栏,中间上方是“告警告警策略”标题,下方有“静态配置”“自定义PromQL”选项。右侧是数据预览区域,上方有“Value”“Graph”选项卡,当前选中“Graph”;下方是折线图,显示了从2024 - 06 - 18 00:00:00到2024 - 06 - 19 00:00:00的数据变化情况。该图与上文配置好触发条件后点击“数据预览”预览promQL表达式的内容对应。

接着配置告警等级、通知方式等信息,保存即可配置成功。

告警策略导入导出

在列表页可以查看现有告警策略,以及其告警历史情况。如果您有多个集群,可以给一个集群配置好告警策略之后,选中所需的告警策略,通过导出导入的方式,快捷应用到其他集群上。

导出告警策略

这张图片展示的是SelectDB Enterprise Manager的告警策略相关页面,处于“监控”模块下的“告警-告警策略”页面,页面顶部有“导入”和“导出”两个功能按钮,其中“导出”按钮被红色框突出标注。页面下方以列表形式呈现现有告警策略,列表包含“告警名称”“触发条件”“告警对象”“近7天触发次数”“操作”几列,当前已勾选“Test”告警策略,该策略对应触发条件为“FE 不存活的节点总数大于1...”,近7天触发次数为55,其操作栏的开关处于开启状态;页面还显示另外两条默认的Warn、Critical告警策略,触发条件分别为JVM线程数大于2000、FE不存活的节点总数大于0,近7天触发次数均为0。此页面对应文档中导出告警策略的相关内容,用于提供告警策略导出操作的界面参考。

图片展示的是SelectDB Enterprise Manager中导出告警策略时的文件存储界面。界面上方显示存储为“Guide_rules_2025-02-27”,下方有标签输入框。中间部分有文件夹选择区域,当前选中“AlertRules”文件夹。界面左侧有导航栏,包含个人收藏、应用程序、桌面、文稿、下载等选项。下方有标签栏,显示红色、橙色、黄色、绿色、蓝色等标签。底部有“新建文件夹”按钮、“取消”和“存储”按钮。该图片与文档中“导出告警策略”内容相关,用于说明导出时文件存储的界面情况。

导入告警策略

图片展示的是SelectDB Enterprise Manager监控告警页面中告警策略的导入界面。页面左侧有导航栏,中间上方有“监控”“告警”标签,当前选中“告警”。下方有“新建”“导入”按钮,其中“导入”按钮被红色框突出显示。右侧列表显示了告警策略名称、触发条件、告警对象、近7天触发次数及操作选项。该图片与上下文介绍的告警策略导入导出功能相关,直观呈现了导入告警策略的操作入口位置。

选择要导入的文件

图片展示的是SelectDB Enterprise Manager中导出告警策略后的文件界面。文件名为“Guide_rules_2025-02-27.json”,大小为851字节,创建时间为今天16:28。文件内容为JSON格式的告警规则数据,包含ruleId、name、conditionAnnotations等信息。该图片与文档中“导入告警策略”部分相关,用于说明在导出告警策略后,可将此文件导入到其他集群,以快捷应用告警策略。

图片展示的是SelectDB Enterprise Manager监控告警页面中告警策略列表。页面左侧有导航栏,右侧上方有“导入成功”提示框。列表中显示了告警名称、触发条件、告警对象、近7天触发次数及操作等信息,如“Test_Import_Rule”触发条件为“FE不存活的节点总数大于1”,“Test”触发条件为“FE不存活的节点总数大于1”等。该图片与上下文“导入告警策略”相关,直观呈现了导入后的告警策略显示情况。

通知方式设置

邮箱

  • 确认您已经在“服务配置”里面填写了邮件服务器的信息(一般情况下,独立发件地址和独立发件地址密码可不配置)

    图片展示了SelectDB Enterprise Manager的“服务配置”界面。左侧导航栏选中“服务配置”。右侧配置区域中,邮件警告开关被红色框突出显示,当前处于“开启”状态。邮件服务器协议为SMTP,服务器地址为xxxxxx.com,端口为9944,用户名为cloud@selectdb.com,密码为部分隐藏。独立发件地址和独立发件地址密码可不配置。该图与上文“确认您已经在‘服务配置’里面填写了邮件服务器的信息”内容相关,直观呈现了邮件服务器信息填写位置。

  • 在告警规则配置界面填写要发送的邮件地址即可

    图片展示的是SelectDB Enterprise Manager中编辑告警策略的界面。在“通知方式”区域,有多种通知方式供选择,其中“邮箱”选项被红色框突出显示。该图片与文档中“邮箱”通知方式设置的内容相关,用于说明在告警规则配置界面填写要发送的邮件地址即可,且确认需在“服务配置”里填写邮件服务器信息(一般情况下,独立发件地址和独立发件地址密码可不配置)。

企业微信

  • 添加群机器人,按照提示完成机器人的名称填写即可

    图片展示的是企业微信中“Manager企业微信告警测试群”的聊天界面。界面右侧有群聊信息栏,其中“添加群机器人”选项被红色框突出显示。该图片与文档中“企业微信通知方式设置”部分内容相关,用于说明在企业微信中添加群机器人以设置通知方式的操作步骤,即在群聊信息栏找到并点击“添加群机器人”选项。

  • 复制 Webhook 地址

    图片展示的是在企业微信中添加群机器人后弹出的提示窗口。窗口上方显示“已添加告警测试,配置Webhook后可推送消息到群”。下方有Webhook地址,地址为https://qyapi.weixin.qq.com/cgi-bin/webhook/se netKey。窗口底部有“复制地址”和“配置说明”两个按钮,其中“复制地址”按钮被红色框突出显示。该图片与文档中“企业微信”通知方式设置部分内容相关,用于说明在企业微信添加群机器人后获取Webhook地址的操作。

飞书群

  • 添加群机器人

    图片展示的是添加飞书群机器人的界面。左侧有“添加机器人”标题,下方有搜索框。右侧列表中,“自定义机器人”以红色框突出显示,其描述为“通过webhook将自定义服务的消息推送至飞书”,并有向右箭头。列表中还有“飞书智能顾问”“开放平台智能助手”等其他机器人选项。该图片与文档中“飞书群”通知方式设置的上下文相关,用于说明添加飞书群机器人时可选择“自定义机器人”这一选项。

    图片展示了飞书群的设置界面。画面右侧“设置”区域中,有“群机器人”选项被红色框突出显示。该界面还显示了群成员为1人,群名称为“飞书告警通知测试群”,并有群成员头像、群成员数、群成员邀请、群成员移除等功能按钮。此图与文档中飞书群通知方式设置的内容相关,用于说明在飞书群中添加群机器人以设置通知方式的操作步骤。

    这张图片对应的是飞书群的机器人添加界面,是Enterprise Manager集群告警通知方式设置的相关内容。界面显示飞书自定义机器人添加页面,顶部提示可通过Webhook向群聊推送外部服务消息,提供完成添加的操作指引,机器人头像支持使用默认头像或上传头像两种选择,当前选用默认头像,预设了“告警测试机器人”的名称,描述栏填写了“通过webhook将自定义服务的消息推送至飞书”,页面底部有取消和添加按钮可供操作。

    图片展示的是飞书群添加群机器人时的Webhook地址设置界面。界面上方显示Webhook地址为“https://open.feishu.cn/open-apis/bot/v2/hook/b4336fd2-2bddf...”,右侧有“复制”按钮。下方有安全设置和设置选项,如自定义关键词、IP白名单、签名校验等,当前均未勾选。界面底部有“完成”按钮。该图片与文档中飞书群添加群机器人的操作步骤相关,用于说明复制Webhook地址的操作。

钉钉群

添加钉钉机器人获取 webhook 的方式参见 自定义机器人接入

图片展示了钉钉群界面右上角的设置图标。该图标位于多个图标中,被红色框线突出显示。在文档中,介绍钉钉群通知方式设置时,提到添加钉钉机器人获取webhook的方式,需选择“自定义”,进行安全配置,选择关键词,输入“Alert”以及“告警”,点击“完成”后可复制Webhook,此图可能用于辅助说明在钉钉群中找到设置位置的操作指引。

图片展示的是钉钉群设置界面中“机器人”部分。界面中“机器人”选项被红色框突出显示,其旁有蓝色头像图标,右侧显示“3”。该图片与文档中“钉钉群”通知方式设置部分内容相关,文档提到添加钉钉机器人获取webhook的方式可参考“自定义机器人接入”,此图可能用于辅助说明在钉钉群中添加机器人及设置相关操作的界面位置。

这张图片是企业微信的机器人管理界面,界面内显示多个已有的机器人选项,包括名为“小钉”的钉钉官方机器人,其标注了“已开启的技能”为日程提醒、投票提醒;还有名为“嘿嘿”“报警机器人”的自定义机器人,分别标注了添加人信息。界面底部有一个被红框标注的“添加机器人”选项,提示“多款丰富的精选机器人”,该内容对应文档中企业微信通知方式配置里添加群机器人的相关操作指引,是完成机器人添加流程的关键操作入口。

选择 “自定义”

图片展示的是SelectDB Enterprise Manager中添加钉钉机器人时的“机器人”选择界面。界面上方显示“选择要添加的机器人”,下方有多个机器人图标,如自动化小助手、心知天气等。其中“自定义”选项被红色框突出显示,其下方文字说明“通过Webhook接入自定义服务”。该图片与文档中“钉钉群”通知方式设置部分内容相关,用于指导用户在添加钉钉机器人时选择“自定义”选项。

进行安全配置,选择关键词,输入 “Alert”“告警”,点击“完成”后可复制 Webhook。

这张图片是钉钉群配置告警相关自定义机器人的“添加机器人”界面,对应文档中钉钉群通知方式的设置步骤。界面中机器人名字已填写为“告警机器人”,添加到的群组指定为“报警群”;在安全设置区域,“自定义关键词”选项已勾选,关键词输入框内分别填写了“Alert”和“告警”,下方还有“加签”“IP地址(段)”的勾选选项,以及服务条款同意复选框,界面底部设有“取消”和“完成”按钮,完成设置后即可复制对应Webhook地址,用于集群告警的相关通知。

图片展示的是钉钉群添加钉钉机器人时的“添加机器人”界面。界面上方有“添加机器人”标识及勾选框。中间部分提示设置webhook,点击设置说明查看配置方法。下方显示Webhook地址为“https://oapi.dingtalk.com/robot/send?access”,右侧有红色框突出显示的“复制”按钮。底部有“完成”和“设置说明”按钮。该图片与文档中“钉钉群”通知方式设置部分相关,用于指导用户复制Webhook地址。

WebHook

Webhook的方式表示用户可以自定义一个API,把API服务的完整URL提供给Manager,由Manager向API发送告警,用户的API中收到告警后,可以做任何其他处理。

普通配置

图片展示的是SelectDB Enterprise Manager中新建告警策略的界面。界面上方有“新建告警策略”标题,下方有“告警名称”输入框及“策略类型”“触发条件”“告警等级”“通知方式”等设置项。其中“通知方式”区域有“站内通知”“邮箱”“企业微信群”“飞书群”“钉钉群”“Webhook”等选项,红色框突出显示了“Webhook”选项,其下方有输入框,示例地址为“http://172.20.17.117:8004/doris/alert”。该图片与上下文介绍的WebHook通知方式设置内容相关,展示了WebHook通知方式的配置界面。

自定义参数

目前需要在输入框里面填写下面的JSON结构(结构是固定的)

{
"enabled": true,
"url": xxx(json string type),
"method": xxx(json string type),
"headers": xxx(json object type),
"bodyTemplate": xxx(json object type),
"retryCount": 3,
"retryIntervalSec": 3
}

其中自定义请求体填写在bodyTemplate字段里面,示例如下,bodyTemplate里面可以填写任意结构的json,其中需要用到告警字段的地方,按照下面的表格里面的模板填写就行(区分大小写)

变量名称含义使用方式示例值
alertID告警ID用户在自己定义的json请求中,需要使用到告警名称的地方,填写模板{{ .alertID }}1234
alertName告警名称用户在自己定义的json请求中,需要使用到告警名称的地方,填写模板{{.alertName }}CPU使用率告警
alertType告警类型(告警通知/告警恢复)用户在自己定义的json请求中,需要使用到告警名称的地方,填写模板{{.alertType }}AlertTrigger/AlertRecovery
clusterName集群名称用户在自己定义的json请求中,需要使用到集群名称的地方,填写模板{{.clusterName}}testDoris
clusterUuid集群Uuid用户在自己定义的json请求中,需要使用到集群Uuid的地方,填写模板{{.clusterUuid}}cluster-674046288248837
startTime告警开始时间用户在自己定义的json请求中,需要使用到告警时间的地方,填写模板{{.startTime}}2025-06-17T06:16:41.891+00:00
level告警级别用户在自己定义的json请求中,需要使用到告警级别的地方,填写模板{{.level}}Info
alertDetail告警详情用户在自己定义的json请求中,需要使用到告警级别的地方,填写模板{{.alertDetail}}172.20.17.107 IOException 出现次数 12 ;172.20.17.126 IOException 出现次数 12
或者
172.20.17.107 IOException count is 4 ;172.20.17.126 IOException count is 4
condition告警触发条件用户在自己定义的json请求中,需要使用到告警级别的地方,填写模板{{.condition }}fe.warn.log 最近 3 分钟 IOException 出现超过 1 次
或者
fe.warn.log within 1 minute IOException appears more than 2

示例图片

这张图片展示的是Enterprise Manager中新建告警策略的WebHook通知方式设置界面。界面顶部的通知方式选项中,WebHook选项处于选中状态,右侧还标注有“自定义参数”的开关标识,界面内呈现了对应的WebHook配置参数的JSON代码示例,代码中包含enabled、url、method、headers等多项配置内容,涵盖了告警触发相关的参数设置规则,该界面用于完成集群告警的WebHook通知相关配置操作,界面下方还有恢复通知开关及确认按钮。

示例json文本

{
"enabled": true,
"url": "https://webhook.site/xxx",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"bodyTemplate": {
"upside": "doris_manager",
"clusterInfo": {
"name": "{{ .clusterName }}",
"uuid": "{{ .clusterUuid}}"
},
"alertInfo": {
"name": "{{ .alertName }}",
"type": "{{.alertType}}",
"startTime": "{{ .startTime }}",
"detail": "{{ .alertDetail}}",
"condition": "{{.condition}}"
}
},
"retryCount": 3,
"retryIntervalSec": 3
}