测试用例说明

假设我们有一个PM2.5浓度探测传感器,当PM2.5的值大于200的时候标记为重度污染并告警,当低于200的时候解除清除告警。即:

  • 如果pm25>=200 创建活更新现有报警
  • 如果pm25<200 则清除报警

    添加设备 :略(参考1.1-1.2)

    消息流

  • 节点 A:过滤脚本节点:如果pm25在预期的间隔内,脚本将返回 False,否则将返回 True。

  • 节点 B:创建报警节点:如果发布的pm25不在预期的时间范围内,则创建或更新警报(过滤器脚本节点返回 True)。
  • 节点 C:清除报警节点:如果发布的pm25在预期的时间范围内(脚本节点返回 False),则清除警报(如果存在)。
  • 节点 D:规则链节点。将传入消息转发到指定的规则链创建和清除警报

    配置规则链

    创建和清除警报:
    image.png
    image.png
    A节点:pm25>200返回true,否则返回false。
    image.png
    B节点:创建告警类型并传播。 C节点默认和告警类型(General Alarm)相同即可。
    image.png
    D节点:将报警规则链添加到 根连timeseries后边表明获得遥测数据时判断是否需要报警。
    image.png

    验证结果

    也有两种方式:1.我们可以打开调试模式。2.也可以创建报警组件。
    第一种:打开创建告警和清除告警的调试模式。一旦有信息触发,事件中将会有相应事件。
    image.png
    现在使用mqttbox 发布数据到一台设备。
    image.png
    查看调试事件记录:可以看到已经产生了告警。
    image.png
    现在发布一条数据pm25=140 可以看到告警已经被清除了。
    image.png

    使用仪表板验证

    image.png