【Azure 服务总线】查看Service Bus中消息多次发送的日志信息,消息是否被重复消费
问题描述
使用Service Bus,发现消息被重复消费。如果要查看某一条消息的具体消费情况,需要那些消息的属性呢?
问题解答
使用Azure Service Bus,当消费发送到服务端后,就会生产相关属性,如Partition Key,Message ID,Enqueued Time, Sequence Number等。这些信息可以直接在Server Bus的服务端海量日志中定位到一条消息的具体日志。
例如,发现一条消息ID为 f10daa8d-193a-4dc1-b6a8-768a3f66fdaa的消息,存在多次消费的情况。
查看日志就发现:
根据上图,确实存在消息从Service Bus服务端传输到消费端总次数为5次。只是前四次都在30秒的锁定时间中都没有收到消费端的Complete信号,所以都记录为放弃,未完成的状态,直到第五次消费后,状态为Completed。
这是因为客户端使用 PeekLock 模式消费时,会对当前消息启用排他锁(默认锁定时间30秒),当30秒内没有收到消费端的Compete状态时,则标记为Abandoned。
参考资料
处置接收操作 PeekLock :https://docs.azure.cn/zh-cn/service-bus-messaging/message-transfers-locks-settlement#peeklock
ServiceBusReceivedMessage Class :https://learn.microsoft.com/zh-cn/dotnet/api/azure.messaging.servicebus.servicebusreceivedmessage?view=azure-dotnet
当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2021-12-04 【Azure Developer】Python代码获取的Token出现'Authentication_MissingOrMalformed'问题
2020-12-04 【应用服务 App Service】在Azure Web App的部署文件中,是否可以限制某些文件无法被访问?(如json)
2020-12-04 【Azure Redis 缓存 Azure Cache For Redis】Azure Redis删除 TLS 1.0 和 1.1的计划及问题