IBM Websphere MQ - 查看队列中的消息

时间:2013-10-12 12:10:07

标签: ibm-mq

我在Windows Server 2008计算机上运行IBM Websphere MQ。 现在我想知道如何查看特定队列中的消息内容,例如:

SYSTEM.DEAD.LETTER.QUEUE中有2条消息。如何查看这些消息以便我可以看到它们有什么问题?

我在IBM的网站上看到你可以这样做:

C:\Program Files (x86)\IBM\WebSphere MQ\tools\c\Samples\Bin>amqsbcg SYSTEM.DEAD.LETTER.QUEUE
TLINKTT.QMAN

但是当我运行它时,我收到以下错误:

AMQSBCG0 - starts here
**********************

 MQOPEN - 'SYSTEM.DEAD.LETTER.QUEUE'

 MQGET 1, failed with CompCode:2 Reason:2016
 MQCLOSE
 MQDISC 

这是因为队列正在使用吗?如何在队列使用时查看队列中的消息?

由于

1 个答案:

答案 0 :(得分:4)

大多数MQ返回码的一个好建议是通过mqrc运行它们,例如:运行“mqrc 2016”

  

2016 0x000007e0 MQRC_GET_INHIBITED

2016年意味着队列已配置为阻止消息从队列中脱离(获取被禁止)。浏览(例如amqsbcg)只是对MQOO_BROWSE打开,然后使用browse(例如MQGMO_BROWSE_NEXT)。所以这里的问题不是队列正在使用,更多的是系统管理员阻止人们获取最终在该队列中的消息。

要运行,例如amqsbcg对它你需要启用获取第一个... runmqsc ALTER队列,获取ENABLED以启用获取,或使用资源管理器GUI执行相同操作。一旦完成就把它恢复到残疾状态可能是有意义的,所以你在发现它时就把它留下来。