告警规则
告警规则
ThingsCloud 提供了内置的告警规则,可以将设备属性变化或设备离线作为告警触发条件。
您可以为任何接入 ThingsCloud 的设备创建灵活的告警规则,并实现告警通知。
提示
除此之外,依托于开放的 ThingsCloud API,如您具备一定的开放能力,也可以在应用端实现任意告警逻辑和通知。
创建告警规则
您可以在 设备详情页 > 告警 > 告警规则 中,为当前设备创建告警规则。例如:
![](https://img-1300291923.cos.accelerate.myqcloud.com/docs/site/images/alarm-rule-2.png)
您也可以在 设备类型详情页 > 告警 中,为当前设备类型创建告警规则。
以上两种方式的区别是设备源的不同,设备源决定了告警规则的作用范围,也就是对哪些设备有效。
告警规则的设备源
告警规则支持两种设备源类型:
- 设备类型:告警规则的作用范围包括设备类型下的所有设备。例如:设备源选择燃气浓度传感器设备类型,那么该类型下的所有燃气浓度传感器设备,都可使用该告警规则,而无需为每个设备重复创建告警规则。
- 设备:告警规则的作用范围仅针对指定的一个或多个设备。
告警触发条件
触发条件是告警规则中的重要部分,这里支持设置多个属性触发条件。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/docs/site/images/alarm-rule-3.png)
设置多个条件
当设置多个属性触发条件时,请注意逻辑关系,您可以设置 AND
或 OR
。
AND
表示多个条件要同时成立才会触发,例如:当湿度大于 50% 并且温度大于 20℃ 时触发告警。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119223501_acbd261fec1e40f788d38eddfd4d2714.png)
OR
表示多个条件只要有一个成立即可触发,例如:当湿度大于 50% 或温度大于 20℃ 时触发告警。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119223835_d9e728de17692b387de810905d854279.png)
请注意,当多个条件中 AND
和 OR
同时存在时,AND
的优先级要大于 OR
。
设置动态阈值
在上边的例子中,我们在属性触发条件的阈值中设置了固定数值,而在实际应用中,我们也经常会用到动态阈值,来实现不同设备自动使用不同的告警阈值。
例如有 1000 个温湿度传感器使用同一个告警规则,而每个传感器需要根据安装位置的不同,设置不同的温度下限值。这时候便可以使用动态阈值,而不需要为每个传感器设备创建一个独立的告警规则。
通过使用动态阈值功能,还可以实现让用户通过 App 来管理自己设备的告警阈值。
设置动态阈值非常简单,首先您需要知道,动态阈值实际上是保存在设备属性中,所以修改阈值就相当于修改设备属性。
下边以一个简单的示例来说明,如何在告警规则中设置动态阈值,并让用户可以随时修改阈值。
首先,我们在设备类型中添加几个新的用来保存阈值的属性,属性类型设置为云端私有,是因为这个属性不需要下发到设备。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119224432_bf1b1a0844f0c1ab2774576b5fd42160.png)
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119224614_505609c3c275de3feed6d65ae9e18a88.png)
接下来,在告警规则的阈值输入框中,不输入数值,而是输入 {
符号,这时会自动下拉所有数值型的属性定义,我们这里选择刚添加的 {humidity_min}
。
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119224720_45e559d9420f353af1211e431cea7bbf.png)
同理,为温度的阈值也选择一个属性,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119224803_e1897055cd61677923369741883f2412.png)
也可以使用范围条件来设置两个动态阈值,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240120174356_b3aee35840b6da4abac9ef5720c5d09e.png)
这样一来,我们便可以轻松的修改设备属性,来改变当前设备的阈值。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119232323_6acc0771e7409b54f99e3b5621714530.png)
还可以在 App 面板中放置数值控制组件,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119225321_848d38a847a6679534b9e16eb615b96b.png)
用户便可以在 App 中随意修改温度下限阈值。如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20240119225901_abc65b772e00a4fc37be2b1dce9b7c80.png)
提示
动态阈值功能仅在付费版中支持。
重复次数和持续时间
在满足触发条件的同时,还支持设置重复次数和持续时间。
- 重复次数:设置重复次数后,告警条件首次触发时不会进入告警状态,也不会发送告警通知。当告警条件连续重复触发该次数后,进入告警状态并发送告警通知。
- 持续时间:设置持续时间后,系统会在告警条件被连续触发达到该持续时间后,进入告警状态。
![](https://img-1300291923.cos.accelerate.myqcloud.com/docs/site/images/alarm-rule-4.png)
提示
需要注意的是,当 重复次数 和 持续时间 同时设置时,两者必须同时满足,设备才会进入 告警 状态。
举个例子:告警规则设置如下:
- 触发条件是温度大于 29℃
- 重复次数是 3 次
- 持续时间是 10 分钟
时序图如下:
有效时段
当我们希望告警规则只在部分时段有效时,可以开启有效时段选项,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20230713113850_70383187b7934db667e65aa76bfa2af2.png)
全天每 30 分钟作为一个时段单位,您可以点选或快速拖选,例如选择 08:00 - 19:00,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20230713114117_1496fbcecff6a0199f5c2500f21e13e1.png)
或者选择 00:00 - 08:00 和 19:00 - 24:00 两个有效时段,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20230713114037_59de4e633fb8075e41047288fcf5e06d.png)
当然,您还可以选择任意想要的时段,像这样:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20230713114433_7e59ec6d76b082fd3e00ce4bad81ffc6.png)
如果您希望在无效时段期间,允许告警恢复,可以开启 无效时段允许告警恢复 这个选项,如下图:
![](https://img-1300291923.cos.accelerate.myqcloud.com/articles/2023/20230713114156_857e0dd390e3e2c9749c671498b25b94.png)
告警级别
告警级别用来区分告警的重要级别,用在告警历史和告警通知的显示文字中。例如,在邮件通知方式中,告警级别会显示在邮件标题中。
可选的告警级别包括:
- 普通告警
- 重要告警
- 紧急告警
选择通知组
将已创建的通知组加入告警规则中,用于发送告警通知。支持设置多个通知组。
关于通知组的详细介绍,请浏览 告警通知组。
通知用户
可开启是否为设备所属用户发送告警通知,支持多种用户通知方式,包括:
- 微信公众号通知
- 短信通知
通知文字
通知文字会显示在告警通知的内容中,不同的通知方式会体现在不同位置。例如:
- 邮件通知:显示在邮件正文中。
- 微信公众号通知:显示在模板消息字段中。
告警规则的可用状态
- 全局可用状态:每个告警规则可设置全局可用状态,用来启用或禁用该规则,对该告警规则的所有设备源都生效。
- 单个设备可用状态:在全局可用状态开启的情况上,您可以对关联的设备独立设置启用或禁用状态。例如,当对某个设备进行维护时,可临时关闭该设备的告警规则,但不影响告警规则关联的其它设备。
告警规则的告警状态
告警规则拥有以下几种的告警状态:
- 正常(Ok):表示最近一次设备属性上报未触发告警规则。
- 告警(Alerting):表示最近一次设备属性上报已触发告警规则,且达到设置的重复次数和持续时间。如果未设置重复次数和持续时间,则首次触发会进入告警状态。
- 待定(Pending):表示最近一次设备属性上报已触发告警规则,但未达到设置的重复次数和持续时间。
- 未知(Unknown):表示告警规则暂时无明确的告警状态,例如:规则创建后一直没有相关设备属性上报,或者告警规则被禁用、不在有效时段等情况。