FiWARE:检测传感器何时未向 Orion CB 发送数据

FiWARE: Detecting when a sensor is not sending data to Orion CB

我想知道是否有任何方法可以检测到特定路径中的特定传感器已停止向 Orion Context Broker 发送数据。然后,如果发生这种情况,能够执行某种警报。 FiWARE我已经研究了几个月了,但我真的不知道有哪个GE能做到这一点。

有人知道我该如何解决这个问题吗?提前致谢。

Perseo CEP 有一个 "no signal" 规则类型,允许检测 Orion 属性中是否缺少更新。它是开源的,你可以看看,虽然我不知道这个功能被记录到哪个扩展。

不过,开发一个这样的系统应该不难。只需在 Orion 上使用常规订阅来订阅所需的属性,如果您在给定时间内没有收到任何通知,那么它已停止向 Orion 发送信息。

如果您不想使用订阅,您的系统可以定期查询 Orion 并检查与属性关联的 dateModified 元数据,即 GET /v2/entities/device1/attrs/measure?metadata=dateModified。请查看有关 dateModified 元数据的 NGSIv2 specification 部分 "System/builtin Metadata"。

Orion 本身没有实现这样的机制。然而,实现一个应用程序(一个上下文消费者)做你所要求的是相当容易的。 该应用程序将订阅传感器的更新并保留时间戳,在每个传入通知中更新,当然,还会检查自上次(最新)通知以来经过了多长时间,以及该时间是否大于某个阈值, 发出某种 warning/alarm