我有一个物联网集线器,从连接的设备接收消息(avro格式)。我想根据消息中的特定值配置警报(在IOT集线器监控部分下),但是,警报似乎没有配置基于设备发送的日期的规则。
对此有什么建议吗?这是可能的还是其他的选择?
谢谢,布帕尔
发布于 2019-09-21 00:40:52
你可以让Azure Stream Analytics作业来做that.It,读取以Avro格式发送的消息,然后根据规则对其执行操作。请参阅本文档,了解如何在RuleEngine中使用SQL Azure作为参考数据
http://learniotwithzain.com/2019/08/alert-engine-using-azure-stream-analytics-and-sql-azure-as-reference-data/
更多的链接可以帮助你做到这一点:Rules engine for Stream Analytics on Azure
https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-threshold-based-rules
另一种选择是也使用AzureFunctions,但这需要你做所有底层的事情,使用Azure Stream Analytics非常容易。
Azure函数的一个示例:在此截取消息,然后将其传递给不同的eventhub
[FunctionName("IotDeviceAnalytics")]
public static async Task Run(
[IoTHubTrigger("iothub-eventhubname", Connection = "IotHubConnectionString",
ConsumerGroup = "consumergroup")] EventData[] events,
[EventHub("eventhubconnectionstring", Connection =
"EventHubConnectionString")]IAsyncCollector<string> outputEvents,
ILogger log)
{
foreach (EventData eventData in events)
{
//eventData would have your message
}
}但与Azure的所有组件一样,请检查成本和大小限制。使用SQL Azure作为规则引擎的参考数据对可保存为参考数据的规则大小有限制。
https://stackoverflow.com/questions/58029350
复制相似问题