高级监控报警能够为阿里云Elasticsearch实例设置更细粒度的指标报警规则。例如某个分片的QPS达到某个量级,就会触发报警,并发送报警通知。通过报警规则配置,您可以设置多维度的监控指标和Tags,帮助您快速定位Elasticsearch的性能问题,提高运维排查效率。本文为您介绍如何配置报警规则,并提供详细的参数说明。
前提条件
已创建阿里云Elasticsearch实例。阿里云Elasticsearch所有版本都支持接入高级监控报警服务,仅内核版本大于1.2.0的6.7.0或7.10.0版本支持引擎指标监控。
创建实例的具体操作,请参见创建阿里云Elasticsearch实例。
如果内核版本低于1.2.0,可升级内核版本。具体操作请参见升级版本。
创建报警规则
规则类型
报警规则类型固定为指标报警,表示对指定指标(metric)设置报警阈值。
基本信息
参数 | 说明 |
规则名称 | 长度为1~30个字符,以大小写字母、数字或中文开头,可包含下划线(_)或连字符(-)。 |
描述备注 | 长度为1~100个字符,请填入规则的简单描述,便于快速排查定位。 |
指标预览
定义了报警指标及tags后,系统会自动生成指标预览图。默认情况下,组成指标预览图中的每个点的间隔是1分钟。
由于指标预览图默认采样周期为1分钟,而底层默认采样周期为5s,因此系统会通过采样聚合算法,将1分钟内多个数据点聚合成一个点。
由于索引中包含多个shard,而每个shard会产生一条曲线,因此系统会通过指标聚合算法,将多个曲线合成一条曲线,形成索引的监控曲线图。
指标
单指标
从指标列表中,选择报警指标。或在输入框中输入指标前缀,例如输入elasticsearch-server.bulk,系统将匹配以此前缀开头的所有指标供您选择。指标说明请参见引擎指标或者基础指标。
多指标
单击增加指标,可添加多个指标。添加后,系统会根据多指标运算结果,判断是否触发报警。
每个指标都会对应一个标签名,例如上图中的指标a、指标b。
必须添加同一类型的指标,例如添加多个QPS监控类指标。
expression:多指标间的计算表达式,运算符支持+、-、*、/、&&、||、>、<,默认为+。例如上图中生成的指标图为:在各个时刻,指标a的值与指标b的值进行求和,其结果随时间变化的曲线图。
例如expression为(a>1200) && (b<1500) && (c<1),表示系统将绘制这个表达式在各个时刻的计算结果。由于该表达式为布尔表达式,因此这个表达式的指标预览图中曲线的取值是0或1。
tags(可选)
定义指标属性标签,即进一步对指标进行过滤。取值是一组键值对。
属性说明
根据下表说明,填写需要进行指标数据采集的属性值。
参数
说明
instanceId
实例ID。
shard_id
分片ID。
ip
集群中节点的IP地址。
index
索引的名称。
primary
分片的属性,取值如下:
true:主分片
false:副本分片
空:主分片和副本分片
高级配置
参数
说明
指标聚合
如果tags中存在多个取值,系统将生成多条曲线。指标聚合用来定义多个曲线合成一条曲线的算法。支持算法:sum()、avg()、max()、min()、count()。
采样聚合
由于指标预览图默认采样周期为1分钟,而底层默认采样周期为5s,因此系统会通过指标聚合算法,将1分钟内多个数据点聚合成一个点。支持算法:sum()、avg()、max()、min()。
tags语法
tags支持根据多个属性值进行过滤。例如同时对a集群和b集群的查询QPS进行监控报警,则instanceId设置为literal_or(a|b),详细语法如下。
名称
说明
示例
literal_or
过滤出满足一个或多个属性值的数据。
host=literal_or(web01|web02|web03):过滤出host为web01、web02或web03的数据。
not_literal_or
过滤出不包含一个或多个属性值的数据。
host=not_literal_or(web01|web02|web03):过滤出host不为web01、web02或web03的数据。
wildcard
过滤出满足通配符的属性值的数据。
host=wildcard(web*):过滤出host以
web
开头的数据。
触发条件
定义报警条件。即当监控指标项满足您定义的报警触发条件后,系统将通知您。
参数 | 说明 |
阈值报警 | 当监控指标到达或超过设置的阈值时,系统会触发对应的WARNING或CRITICAL报警。 |
波动报警 | 波动报警支持对波动变化率或变化值进行监控。例如当前指标的值为a,某个指定时间点前的指标的值为b,系统会计算差值(a-b)或者变化率(a-b)/b,并与设定的阈值进行比较,如果符合条件,则触发报警。 |
高级配置 |
|
无数据校验(可选)
当指标数据为空时,是否触发报警,默认为忽略。如果指定为CRITICAL报警,当连续一段时间(默认1分钟)没有监控到数据时,系统将进行无数据报警。
建议您选择忽略。如果遇到监控自身原因,导致采集的数据为空,也会触发报警。
规则触发后动作
参数 | 说明 |
生效时段 | 接收报警消息通知的时间段。默认每天24小时都接收通知,每隔5分钟发送一次。 |
通知人 | 发生报警时,需要通知的对象。支持选择联系人和联系组,如果选择联系组,系统会为该组中的所有成员发送消息。如果您还没有联系人或联系人组,需要在联系人管理页面创建,具体操作请参见管理报警联系人和管理报警联系人组。 |
通知方式 | 报警通知的方式。您可以为不同等级的报警指定不同的通知方式。 |
完成配置后,您可以单击校验,校验通知人是否已配置对应的联系方式。校验结果对创建规则无影响。