我对Google Cloud IoT Core和相关服务还不陌生,遇到了一个我找不到“最佳实践”解决方案的问题。
使用Google Cloud IoT Core从IoT设备接收遥测数据,检测IoT传感器设备何时离线或变为静音的最佳方法是什么?其他基于云的物联网服务实现具有built-in notification timeouts来生成警报,但我发现Google物联网没有类似的
示例:大量IoT Edge设备监视冷藏室的温度,并通过MQTT或HTTP通过WiFi或移动数据连接将每分钟的测量结果推送到Google Cloud IoT Core。如果测得的温度超过可接受的极限,则会触发警报消息,并将其发送给操作服务人员。
但是,如果某个IoT Edge传感器之一由于某种原因突然停止运行,那么Google Cloud IoT服务如何检测到这种情况?显然,出现问题的唯一迹象是,在某个特定时间段内,没有从某个设备ID接收到任何消息,该消息实质上比配置的消息收发间隔更长。 2 x interval + grace_period,以便生成警报以警告可能由于电源故障而导致的遥测数据不足,需要解决该问题?
是否存在任何标准手段,可以根据从设备接收到的遥测数据的(不足)状态,自动为每个设备维护“ IoT设备存在”状态,因此状态会发生变化(在线/离线过渡)是否可以生成警报消息?
或者是否需要单独的计划服务来迭代所有(假定是活动的)设备,测量自上次接收到的遥测(温度)更新以来的持续时间以及直接更新设备存在状态?
答案 0 :(得分:1)
假设您只想断开连接事件,早前发布了一个解决方案,其中涉及设置StackDriver日志,该日志将消息导出到Pub/Sub。从那里,您可以在Cloud Function中处理事件,以类似于列出的实现中可用的方式发送电子邮件。设置需要花费更多时间,但在处理连接/断开事件方面可以更加灵活。