【Azure 事件中心】Event Hubs如何获取其中存放的历史消息
问题描述
使用Azure Event Hub服务,除了正常的生产,消费消息以外,如果想拿到Event Hub中存储的历史消息?有什么方法呢?
问题解答
获取 Event Hubs 存储的历史消息,首先需要确保消息进入Event Hub的时间处于保留期限(Retention Days)内,因为超过这个期限消息会被删除。
如果确认在期限内,在代码中可以指定时间或者对应的offset获取对应的消息。以Java为例可以参考以下sample:
如果需要从最早的消息,可以直接使用 EventPosition.Earliest(),也可以使用fromEnqueuedTime,参照:https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/eventhubs/azure-messaging-eventhubs/src/main/java/com/azure/messaging/eventhubs/models/EventPosition.java
当然,使用Service Bus Explorer工具也能获取到Event Hub中的数据,下载地址:https://github.com/paolosalvatori/ServiceBusExplorer
当创建Listener 之后,可以指定start time
参考资料
Event Hub事件保留:https://docs.azure.cn/zh-cn/event-hubs/event-hubs-features#event-retention
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2022-06-08 【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD登录并获取AccessToken -- cca.acquireTokenByCode(tokenRequest)
2021-06-08 【Azure Developer】使用 Python SDK连接Azure Storage Account, 计算Blob大小代码示例