ThingsBoard如何处理告警和自动解除告警

问题描述

  1. 设备上传了告警信息后,当低于阈值时自动解除告警,都作为事件上传上来。

在这里插入图片描述

  1. 告警的消息
{
  "事件类别": "1-报警",
  "事件类型": "3501-电流高报警",
  "模拟量列表_数目": 1,
  "模拟量列表": [
    {
      "类型": "23-相电流",
      "值": 4021,
      "精度": "2-0.01",
      "单位": "12-A(安培)",
      "扩展属性对象_长度": 0
    }
  ]
}
  1. 解除告警的消息
{
  "事件类别": "1-报警",
  "事件类型": "3502-电流高报警_恢复",
  "模拟量列表_数目": 1,
  "模拟量列表": [
    {
      "类型": "23-相电流",
      "值": 3124,
      "精度": "2-0.01",
      "单位": "12-A(安培)",
      "扩展属性对象_长度": 0
    }
  ]
}

解决办法

  1. 在规则链中,以后缀是否为"_解除"来判断时新增告警还是解除告警。同时,由于两者的事件编号不一样,所以把编号也去掉。

在这里插入图片描述
2. 节点:去除事件编码

var str = msg.事件类型;
var index = str.indexOf('-');
msg.事件类型 = index !== -1 ? str.slice(index + 1) : str;
return {msg: msg, metadata: metadata, msgType: msgType};
  1. 节点:是否清除告警
return msg.事件类型.endsWith('_恢复');
  1. 创建报警和清除报警两个节点中,告警类型都设置为$[事件类型],这样就可以清除同一设备的相同告警类型的告警。

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值