本文分享自华为云社区《一键守护,实时洞察:华为云IoT设备联动,智能感知设备状态变化,精准触发告警通知【零代码零硬件玩转华为云IoT】》,作者:周周的奇妙编程。

前言

本文聚焦物联网应用中的一个重要功能——设备联动。实验将通过实时监测设备状态变化情况并发送通知,物联网平台能够实现对关键设备的智能化监控与即时响应,为设备管理者提供实时的设备状态信息,确保设备高效稳定运行。

在本实验中,我们将以物联网网关为例,演示如何利用华为云IoT设备接入服务提供的规则引擎功能,设定条件触发规则,当网关设备上下线状态发生变化时,平台自动触发告警并在设备恢复正常后撤销告警,同时通过电子邮件或短信将这些状态变化信息及时通知给指定的管理人员。

监测设备状态变化情况并发送通知

场景说明

在物联网场景下,部分设备具备重要的应用场景,比如物联网网关等,设备管理者需要感知这些设备的上下线情况。

设备接入服务提供规则引擎功能可以满足该诉求,您可以通过简单的操作实现当设备状态满足某个条件时,物联网平台触发指定动作进行通知。

假设现某企业的网关产品下有一批网关设备,单个网关设备下挂载了约400个子设备,用户需要实时关注这批网关设备的状态,确保子设备正常上报数据,同时由于网关设备和物联网平台通过4G网络建立连接,存在由于网络抖动导致频繁告警的问题,因此用户认为短暂的离线后上线属于正常场景,不希望感知这种场景。

通过以下示例可以实现监控该网关产品下所有网关设备在离线持续时间达到5分钟后通过物联网平台上报告警,在设备上线持续时间达到1分钟后恢复该告警,同时发送邮件或短信通知给指定的手机号码。

对接流程

  1. 配置设备接入服务:创建物联网产品和设备,创建联动规则,实现设备上下线满足特定条件后发送告警到应用运维管理服务。
  2. 配置消息通知服务:创建短信或邮件订阅。
  3. 配置应用运维管理服务:创建告警规则,处理由设备接入服务上报上来的告警,并通过消息通知服务发送短信或邮件通知。

配置设备接入服务

在设备接入服务中创建产品模型、注册设备并设置设备联动规则,实现当设备离线达到5分钟后上报告警到应用运维管理平台,设备上线1分钟后恢复该告警。

访问设备接入服务,单击“立即使用”进入设备接入控制台。

选择左侧导航栏的“产品”,单击页面左侧的“创建产品”,创建一个基于MQTT协议的产品,填写参数后,单击“确认”,完成产品的创建。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_物联网

单击此处(https://obs-pipeline.obs.cn-north-4.myhuaweicloud.com/sdkDeploy/Profile_01.zip),获取产品模型文件样例,解压后如图所示:

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_IoTDA_02

找到新增的产品,单击“产品”进入产品详情界面。

在产品详情“模型定义”页面,单击“上传模型文件”,在弹出的页面中加载产品模型文件,然后单击“确定”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_IoTDA_03

上传成功后如下图所示:

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_设备联动_04

选择左侧导航栏的“设备 > 设备注册”,单击右上角的“注册设备”,填写设备注册参数。填写完成后单击“确定”,请注意保存注册成功返回的“设备ID”和“设备密钥”。这里我在前几篇文章中已经注册过了,在此就不过多赘述。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_消息通知_05

选择左侧导航栏的“规则>设备联动”,单击右上角的“创建规则”按钮。(创建规则前需选择所属资源空间)

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_消息通知_06

参考下表参数说明,填写规则内容,创建网关离线上报告警规则。以下参数取值仅为示例,您可参考用户指南创建自己的告警规则,填写完成后单击“创建规则”。

参数名称

步骤说明

规则名称

自定义,例如网关离线规则“Gateway_Offline_Monitor”。

激活规则

勾选“激活规则”。

生效时间

选择“一直生效”。

描述

对该规则的描述,如“网关设备离线持续时长达到5分钟上报告警。”。

触发条件

1、单击“添加条件”;2、选择“设备状态触发”;3、选择步骤4中添加的产“MQTT_Device”,选择“全部设备”,触发状态选择“下线”;4、“状态持续时长”选择“5分钟”。

执行动作

1、单击“添加动作”;2、动作类型选择“上报告警”;3、“告警等级”选择“重要”,告警隔离级别选择“设备”维度隔离,“告警名称”输入“网关状态变更”,“告警内容”输入“网关设备离线,请及时确认并安排人员进行维护”并单击“确定”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_运维管理_07

同理,再创建恢复告警。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_消息通知_08

【注意】

  • 告警名称、级别和维度组合起来共同标识一条AOM(应用运维管理)告警,恢复的告警和上报的告警需要保持同一告警属性,否则恢复告警失败。
  • 设备状态监控有流控限制,监控设备量过多会触发流控导致设备离线告警无法上报的情况,详细请参考使用限制。

配置消息通知服务

在消息通知服务中创建主题并添加订阅,供应用运维管理服务调用以发送邮件或短信。

登录华为云官方网站,访问消息通知服务(https://www.huaweicloud.com/product/smn.html )。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_消息通知_09

进入“主题管理 > 主题”页面,单击“创建主题”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_消息通知_10

输入主题名称,如“Test_1”,单击“确定”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_运维管理_11

进入“主题管理 > 订阅”页面,单击“添加订阅”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_物联网_12

填写订阅信息。填写完成后单击“确定”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_设备联动_13

配置应用运维管理服务

在应用运维管理服务中创建告警规则和告警行动规则,当设备接入服务满足条件上报告警后,对上报告警进行处理并发送邮件或短信。

登录华为云官方网站,访问应用运维管理服务(https://www.huaweicloud.com/product/aom.html)。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_物联网_14

进入“告警 > 告警行动规则”页面,单击“创建告警行动规则”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_设备联动_15

输入告警行动规则名称,如“Test_1”,主题选择配置消息通知服务中创建的主题“Test_1”,单击“确定”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_运维管理_16

进入“告警 > 告警规则”页面,单击“添加告警”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_运维管理_17

输入规则名称,如“Gateway_Status_Change_Alarm_Rule”,选择“事件告警规则 > 自定义事件”,告警来源选择“IoTDA”,监控对象选择自定义属性“event_name=网关状态变更”(“=”后面内容为告警名称),触发策略选择“立即触发”,告警方式选择直接告警,行动规则选择步骤4中创建的行动规则,单击右下角“立即创建”。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_IoTDA_18

验证操作

设备离线持续时长达到5分钟后:

在左侧导航栏选择“监控运维 > 当前告警”,单击“前往AOM”,跳转至应用运维管理服务,有一条名称为“网关状态变更”的重要告警。

设备上线持续时长达到1分钟后:

该设备的“网关状态变更”重要告警恢复,可在历史告警中查看。

零代码零硬件玩转华为云IoT,基于设备联动实时监控设备_物联网_19

结语

至此,我们已经完成了对物联网应用中设备联动功能的全面探索与实践。通过实时监测设备状态变化情况并发送通知,我们不仅实现了对关键设备如物联网网关的智能化监控与即时响应,而且确保了设备管理者能够实时掌握设备状态信息,有效提升设备运维效率与业务连续性。

通过此次系列实验,我们深入体验了华为云IoT设备联动功能的强大之处,它不仅简化了设备状态监控与告警管理的复杂性,还通过与消息通知服务和应用运维管理服务的紧密结合,为设备管理者提供了实时、精准的设备状态信息与告警通知服务。这一整套解决方案不仅适用于物联网网关这类关键设备的监控,还能广泛应用于各类物联网设备与场景,助力企业实现设备管理的智能化与自动化,有效提升业务运营效率与服务质量。在未来物联网应用的实践中,华为云IoT设备联动功能将成为企业实现设备高效管理与智能运维的重要工具,为企业在物联网时代赢得竞争优势提供强有力的支持。

点击关注,第一时间了解华为云新鲜技术~