You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Azure Service Bus队列过去一年进入DLQ的消息总数?

查询Azure Service Bus DLQ过去指定周期的消息总数

以下是几种可靠的方法来统计过去6个月或1年进入死信队列(DLQ)的消息总数:

方法1:Azure Monitor指标统计

直接通过Azure门户或CLI调用Monitor指标,这是最便捷的方式:

  • 门户操作:
    1. 进入目标Service Bus命名空间的页面
    2. 左侧菜单选择「Monitoring」->「Metrics」
    3. 指标选择DeadletteredMessages,聚合方式选Sum
    4. 时间范围设置为「过去6个月」或「过去1年」,界面会自动显示该周期内的DLQ消息总数
  • Azure CLI命令:
    替换<resource-id>为你的Service Bus命名空间资源ID,<start-time>设置为6个月前或1年前的时间(比如2023-01-01T00:00:00Z):
    az monitor metrics list --resource <resource-id> --metric DeadletteredMessages --aggregation Sum --start-time <start-time> --end-time now
    

方法2:Service Bus Explorer工具

这款工具可以直观查看DLQ消息并统计总数:

  1. 下载并启动Service Bus Explorer,连接到你的Service Bus命名空间
  2. 找到目标队列对应的DLQ(名称格式为队列名/$DeadLetterQueue)
  3. 右键选择「View Messages」,在弹出的窗口中设置时间筛选条件(比如「Created Time」在过去6个月内)
  4. 工具顶部会显示符合条件的消息总数,即使消息量大需要分页,总数依然会准确展示

方法3:Log Analytics查询(需启用诊断日志)

如果已经为Service Bus启用了诊断日志并发送到Log Analytics工作区,可以用Kusto查询统计:

  1. 进入对应的Log Analytics工作区
  2. 打开「Logs」页面,执行以下查询(根据需要修改时间范围,ago(180d)是6个月,ago(365d)是1年):
    AzureServiceBus
    | where OperationName == "Deadletter message"
    | where TimeGenerated between (ago(180d) and now())
    | count
    
  3. 查询结果的count值就是该周期内进入DLQ的消息总数

内容的提问来源于stack exchange,提问作者Samaira Mathers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 12:55:25