2013-10-12 2 views
2

Я запускаю IBM Websphere 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 

Это потому, что очереди используется? Как еще я просматриваю сообщения в очереди, когда очередь используется?

Благодаря

ответ

4

Хороший наконечник для большинства возврата MQ-кодов, чтобы пропустить их через mqrc, например, пробег «mqrc 2016»

2016 0x000007e0 MQRC_GET_INHIBITED

Так 2016 означает, что очередь была сконфигурирована для предотвращения сообщений торопливою из очереди (получает заблокированы). Например, просмотр (amqsbcg) открыт для MQOO_BROWSE, а затем доступен для просмотра (например, MQGMO_BROWSE_NEXT). Таким образом, проблема здесь не в том, что очередь используется, тем более, что системный администратор помешал людям получать сообщения, которые попадают в эту очередь.

Для запуска, например. amqsbcg против него вам нужно будет включить получение первой ... runmqsc ALTER queue, получить ENABLED, чтобы включить получение, или использовать GUI проводника, чтобы сделать то же самое. Возможно, было бы целесообразно вернуть его обратно в режим инвалидности, поэтому вы оставите его, как вы его нашли.

+0

спасибо Джейсон. Не знаете, как использовать команды в вашем ответе: например, runmqsc ALTER queue - Вы запускаете ее так или вы заменяете «queue» своим именем очереди? – DextrousDave

+0

Сначала запустите команду runmqsc 'в командной оболочке. Это открывает оболочку MQ. В командной строке вы запустите «alter ql (SYSTEM.DEAD.LETTER.QUEUE) get (ENABLED)». – Shashi

Смежные вопросы