事件中心是将某些云产品的所生成的事件数据进行统一管理、存储、分析和展示的功能模块,目前接入了EDAS的变更事件、ARMS的报警事件、0-1事件(如死锁、OOM和应用启动等)、MSE的微服务管控事件和K8s集群事件。当您的应用使用了相关的产品,对应的事件会自动接入事件中心进行统一的分析展示,方便您查看与分析。

事件模型

事件中心的一个事件主要由{source(事件来源),type(事件类型), level(事件等级), time(事件发生时间), data(事件体)}这样5个字段来定义,其中事件体data一般是一个JSON字符串。事件的搜索展示和订阅会涉及事件的这5个字段。

除此以外,一个事件还会关联一些额外的可选字段,目前主要包括PID、IP、ClusterId和PodName。

进入事件中心

  1. 登录ARMS控制台
  2. 在左侧导航栏选择应用监控 > 应用列表,并在顶部菜单栏选择目标地域,然后单击目标应用名称。
  3. 在左侧导航栏单击事件中心

事件中心功能介绍

事件中心主要包含三个页签,分别是普通视图拓扑视图订阅规则
  • 普通视图将与当前应用关联的所有事件进行简单的多维度分析与展示,详情请参见普通视图
  • 拓扑视图将当前应用关联的事件和与当前应用的资源拓扑图进行结合展示,详情请参见拓扑视图
  • 订阅规则以列表形式展示了当前用户创建的订阅规则,详情请参见订阅规则

普通视图

普通视图可以按照用户指定的检索条件进行搜索,搜索的结果会以三个视图进行展示,分别是:不同来源事件占比不同来源事件数量走势事件详情

普通视图
  • 单击柱状图中某一时刻的立柱,事件详情区域将会展示立柱关联时刻的所有事件列表。
  • 单击事件详情右侧的查看,可以查案事件的具体内容。
  • 单击事件详情右侧的订阅,可以订阅指定事件,详情请参见订阅规则

拓扑视图

拓扑视图首先会绘制出该应用的资源拓扑,包含该应用使用的ECS,该应用部署的实例Pod,该应用使用的所有RDS和Redis等中间件资源,以及该应用挂载的SLB和NAT等。之后会将获取到的关联事件、操作审计、云监控事件关联到对应的拓扑节点上,单击相应节点,会在左上角的事件详情区域展示与该节点关联的事件:
  • 应用侧相关事件:即事件中心的事件。
  • 云资源侧相关事件:即云监控的相关事件。
  • 相关操作审计:即来自于操作审计的审计记录。

该视图可以使您在应用出现故障时,可以快速排查关联的资源各自发生了什么问题。例如在大型企业中,由于某个员工的误操作,重启了生产环境的RDS,导致线上业务故障,利用该视图,可以快速的发现应用访问的RDS在出现了重启操作。

拓扑视图

订阅规则

订阅规则页签展示您当前所有的订阅规则,您可以在该页面启用、禁用或者修改规则。
注意 您只能修改您自己在控制台创建的规则,无法修改系统内部自动创建的规则。
订阅规则是一条表示您订阅满足指定条件的事件,并将该事件发送到指定的Webhook的规则。创建订阅规则有两种方式:
  • 方式一:在订阅规则页签右上角单击新建订阅规则
  • 方式二:在普通视图页签的事件列表区域单击事件的订阅

新建订阅规则

  1. 单击订阅规则页签,在页面右上角单击新建订阅规则
  2. 创建订阅规则面板的填写基本信息页签,输入规则名称规则描述,然后单击下一步
  3. 选择事件模式,完成配置后单击下一步
    参数 描述
    事件来源 在下拉列表中选择事件来源。
    事件类型 在下拉列表中选择事件类型。
    事件等级 在下拉列表中选择事件等级。
    事件关键字 在文本框中输入事件关键字。
    显示高级过滤选项 默认关闭,开启后可设置集群ID接口/服务名主机IPPOD名的过滤选项。
    自定义过滤条件 自定义过滤条件一般用来指定事件体JSON的某个字段需要满足的条件,根节点是data,以.的形式下钻事件体JSON的某个字段。请输入自定义的过滤条件,最多可以设置6条过滤条件。
    选择有效字段 %data.x.y;的形式选择有效字段,选择完成后,请给选择的字段输入一个别名,该别名可用于在填写Webhook信息的Post请求体中以占位符的形式出现。最多可以设置6条有效字段。
  4. 填写Webhook信息,完成设置后单击提交
    参数 描述
    http方法 支持Get和Post两种,Get请求仅需要填写需要填写url、header和params,Post请求在此基础上还需要填写请求体中的Post请求体。
    url路径 请输入URL路径。
    输入路径/header参数 header为请求头参数,一般用来设置Content-type之类的内容;params是路径参数,最后会以?key1=value1&key2=value2的形式拼接在填写的URL后面。
    Body 可以用{key}的形式来标示一些应用,key可以是步骤二中选择的有效字段的别名,也可以是一些预定义的字段,包括source(事件来源)、type(事件类型)、data(事件数据体)、timeStr(时间)、clusterId(集群ID)、pid(应用ID)、IP(IP地址)、level(事件等级)。
    注意 在Post请求中,params参数设置不会生效,如果需要表达该参数,需要在填写的URL中事先拼接好相应参数。

在普通视图中订阅事件

  1. 普通视图页签的事件详情区域,单击事件详情右侧的订阅
    以该种方式创建的订阅规则,会根据您选择的事件来自动选择事件来源、事件类型和事件等级三个过滤条件。
  2. 单击事件JSON文件中某个字段Value的形式来选择自定义过滤条件和有效字段。每次单击会自动生成一个过滤条件和选择字段,同时您还可以手动修改或者删除字段来调整规则,完成事件模式设置后单击下一步
    普通视图订阅
  3. 填写Webhook信息,完成设置后单击提交
    参数 描述
    http方法 支持Get和Post两种,Get请求仅需要填写url、header和params,Post请求在此基础上还需要填写请求体中的Post请求体。
    url路径 请输入URL路径。
    输入路径/header参数 header为请求头参数,一般用来设置Content-type之类的内容;params是路径参数,最后会以?key1=value1&key2=value2的形式拼接在填写的URL后面。
    Body 可以用{key}的形式来标示一些应用,key可以是步骤二中选择的有效字段的别名,也可以是一些预定义的字段,包括Source(事件来源)、type(事件类型)、data(事件数据体)、timeStr(时间)、clusterId(集群ID)、pid(应用ID)、IP(IP地址)、level(事件等级)。
    注意 在Post请求中,params参数设置不会生效,如果需要表达该参数,需要在填写的URL中事先拼接好相应参数。