测试用例说明
假设我们有一个PM2.5浓度探测传感器,当PM2.5的值大于200的时候标记为重度污染并告警,当低于200的时候解除清除告警。即:
- 如果pm25>=200 创建活更新现有报警
-
添加设备 :略(参考1.1-1.2)
消息流
节点 A:过滤脚本节点:如果pm25在预期的间隔内,脚本将返回 False,否则将返回 True。
- 节点 B:创建报警节点:如果发布的pm25不在预期的时间范围内,则创建或更新警报(过滤器脚本节点返回 True)。
- 节点 C:清除报警节点:如果发布的pm25在预期的时间范围内(脚本节点返回 False),则清除警报(如果存在)。
- 节点 D:规则链节点。将传入消息转发到指定的规则链创建和清除警报。
配置规则链
创建和清除警报:
A节点:pm25>200返回true,否则返回false。
B节点:创建告警类型并传播。 C节点默认和告警类型(General Alarm)相同即可。
D节点:将报警规则链添加到 根连timeseries后边表明获得遥测数据时判断是否需要报警。
验证结果
也有两种方式:1.我们可以打开调试模式。2.也可以创建报警组件。
第一种:打开创建告警和清除告警的调试模式。一旦有信息触发,事件中将会有相应事件。
现在使用mqttbox 发布数据到一台设备。
查看调试事件记录:可以看到已经产生了告警。
现在发布一条数据pm25=140 可以看到告警已经被清除了。
使用仪表板验证