azure - 如何监控 Azure 事件中心消费者延迟?

标签 azure azure-eventhub

我们一直在尝试监控事件中心分区上的消费者延迟。

我已经查看了 azure 门户和事件中心 Api,但到目前为止什么也没发现。

想知道是否有人尝试过这个,如果是的话,你能给我指出正确的方向吗?

谢谢。

最佳答案

您可以将当前正在处理的消息的消息序列与分区接收到的消息的最后序列号进行比较。这些数字之间的差异是您处理的最新消息“落后了多远”。要获取分区中收到的最后一条消息的详细信息,您需要访问 PartitionContext 对象。

我的实现方式是使用 Azure Function 和 Application Insights 中的自定义指标。当收到一批消息时,我计算值之间的差异并写入指标,这使我能够在 Grafana 中跟踪此消息并在需要时发出警报。

我在这里写了一篇关于如何实现这一目标的中等文章 - https://medium.com/@dylanm_asos/azure-functions-event-hub-processing-8a3f39d2cd0f

关于azure - 如何监控 Azure 事件中心消费者延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56491948/

相关文章:

mongodb - 通过代码在 Cosmos DB 中启用 Mongo DB 聚合管道

python-3.x - 如何在 Azure ML 实验脚本上导入自定义函数?

azure - 如何仅通过订阅者使用来自 azure 事件中心的消息?

c# - 如何在 C# 中为事件中心创建接收器以获取给定时间跨度的消息?

java - 某些记录的 Azure eventhub Kafka org.apache.kafka.common.errors.TimeoutException

c# - 在 C# 中读取事件中心存档文件

c# - Azure函数: HttpRequestMessage does not contain a definition for 'CreateResponse'

azure - 使用 Terraform 的 Azure 数据工厂诊断设置的资源特定目标表

rest - Azure 部署版本

c# - 强制 EventProcessorHost 重新传递失败的 Azure 事件中心 eventData 到 IEventProcessor.ProcessEvents 方法