使用ARMS告警管理集成多个告警源后,您可以通过设置事件处理流将告警源产生的事件进行过滤和分类。本文介绍如何创建事件处理流。
新建事件处理流
登录ARMS控制台。
在左侧导航栏中选择。
在事件处理流页面单击右上角的新建处理流。
在新建处理流页面的基本信息区域输入处理流名称。
在流动作配置区域设置事件处理流程。
将可用流程动作区域的动作拖至事件处理流区域。
在最右侧区域设置事件处理流中各动作的执行条件。
说明动作配置完成后可以在测试数据区域对告警字段进行测试,验证动作是否配置成功。
动作
说明
示例
触发条件
满足触发条件的事件才会执行当前处理流。
场景
名称为容器CPU使用率告警的集成执行当前处理流。
动作配置
设置条件为
_aliyun_arms_integration_name等于容器CPU使用率告警。
过滤事件
满足过滤条件的事件将会跳过当前事件流,执行下一个事件流,未过滤的事件将会继续执行当前处理流。
说明如果您的告警规则还未产生事件,此时只能选择到ARMS预置的
_aliyun_arms_integration_id和_aliyun_arms_integration_name字段进行配置。如果您需要使用severity、alertname等事件字段,可以通过以下两种方式配置:手动输入字段。
添加告警规则,使其产生告警事件。产生事件后,即可以在此选择事件字段值。
场景
P4等级的告警事件不执行当前处理流。
动作配置
设置条件为
severity等于P4。
识别事件类型
根据选择的事件字段值,通过算法识别出事件对象分类(Class)和事件类型(Type),用于事件和告警查询统计。
支持识别的事件对象分类(Class)如下:
网络(Network)
存储(Storage)
计算(Compute)
操作系统(OS)
应用(Application)
数据库(Database)
变更(Change)
支持识别的事件类型(Type)如下:
可用性(Availability)
时延
容量(Capacity)
错误
未知(Unknown)
场景
通过
alertname和message字段值识别事件的对象分类(Class)和事件类型(Type)。动作配置
设置识别分类字段为
alertname和message。
执行结果
系统会将智能识别结果写入
class和type标签。
设置事件等级
将执行当前处理流的事件等级设置为特定值。
场景
将核心服务网络类型的告警事件的等级设置为P1。
动作配置
设置触发条件动作为
class等于network。将设置事件等级动作设置为P1。

执行结果

设置业务标签
为执行当前处理流的事件设置业务标签(Label),用于事件和告警统计查询。
字段:将事件中的字段值作为
label字段值。值:为
label字段设置固定值。
场景
将告警等级作为告警标签,以便之后统计各等级的事件。
动作配置
设置业务标签为
字段:severity。
执行结果
告警事件中将会新增
label字段,label字段值为severity字段值。删除字段
删除事件中的某些字段。
场景
告警事件中存在
location和region字段,location字段中已包含Region信息,需要删除region字段。动作配置
设置删除字段为
region。
提取内容
通过正则表达式,提取事件中某字段的内容,填充到新的字段中。
场景
告警字段:
"location":"cn-hangzhou-hz4"提取
location字段的地域和具体位置信息填充到region和datacenter字段中。动作配置
待提取字段:
location提取正则表达式:
([a-zA-z]+-[a-zA-z]+)-(.*)填充的字符:
region、datacenter

执行结果

匹配更新
当系统检测到事件的指定字段中存在某段内容时,就将设置的字段值填充到目标字段中。
场景
告警字段:
"message":"ping to i-bp1e42d0ydxf7pstuepz > 100ms"当
message中包含ping时表示当前事件为网络事件,则需要将当前事件标记为网络类型。动作配置
匹配字段:
message满足下面条件时更新字段值:包含
ping输出network说明包含的值可以使用实际字段值或正则表达式。
填充到字段:
class

执行结果

字段丰富
通过调用API或者查询本地Excel数据源的方式,将得到的结果填充到目标字段中。
说明目前数据源功能仍在灰度中,请联系告警钉钉答疑号(
d9j_rg9e4062f)协助添加。场景
根据告警事件中的IP字段,通过查询上传的Excel数据源,将得到的主机名填充到事件的
hostname字段中。动作配置
选择数据源:获取Host数据源-excel
匹配更新模式:
ip(匹配Excel中列名)等于ip(对应Excel中列值)填充到字段:
$.hostName(Excel查询返回结果得到的列名) 填充到hostname
替换内容
查找并替换指定字段中的字段内容,可以正则表达式查找对指定字段内容。
场景
将告警事件中的
d.b.字符串替换为database字符串。动作配置
需要替换的内容片段:
message将内容片段:
d\.b\.说明可以使用实际字段值或正则表达式。
替换为:
database

执行结果

分割内容
通过分割字符对字段进行拆分,拆分结果填充到多个目标字段中。
场景
告警字段:
"message":"myhostid_myuserid_myruleid"将
message字段中的字段值拆分为hostid、userid、ruleid并分别填充到新的字段中。动作配置
需要拆分的字段:
message分割字符:
_拆分结果填充字段:
hostId、userId、ruleId说明拆分后的字段将会按照顺序填充。

执行结果

填充模板
填入一段模板内容(如:类型
${class}的事件来源是${source}),变量名为事件集成后的字段名,模板渲染后填充到目标字段中。场景
告警字段:
"source":"server", "class":"network"将
message字段设置为类型${class}的事件来源是${source},其中需要引用class和source字段值。动作配置
填充的模板:
类型${class}的事件来源是${source}填充到字段:
message

执行结果

丢弃
丢弃执行当前处理流的事件,丢弃动作只能作为当前事件处理流最后一个节点,且无需设置。
无
在测试数据区域左侧输入测试字段和字段值,或者单击从事件中选择,从已有的告警事件中选择测试事件,然后单击点击测试。
设置完成后,单击保存。
处理流新建完成后,集成的告警源将会按处理流顺序完成事件的过滤,过滤后的事件可以在告警事件历史页面查看。更多信息,请参见查看告警事件历史。
管理事件处理流
事件流创建完成后,您可以在事件处理流页面执行以下操作:
调整处理流顺序:在目标处理流右侧操作列单击上移或下移。
启动或禁用处理流:在目标处理流右侧操作列单击启用或停止。
更新处理流:在目标处理流右侧操作列单击编辑。
删除处理流:在目标处理流右侧操作列单击删除,在弹出的对话框中单击确认。
查看处理后的告警事件
在控制台左侧导航栏选择。
在告警事件历史页面可以查看所有告警事件,单击事件名称可以查看告警事件的详细信息。更多信息,请参见查看告警事件历史。












