Message Image  

MQ Message Manager

 View Only
Thu July 23, 2020 09:28 AM

Introduction

The MQ Message Manager tool can be used to manage IBM MQ Queues. With this tool you can browse, put, get, copy, delete, filter, export messages of an IBM MQ Queue.

The tool is useful for MQ Administrators, and Developers.

It will run on Windows, Mac, and Linux.

Installation
Simply download, and extract the attached zip file.

Configuration
You can define one or many Queue Managers configurations in "properties/MsgManager.props" as below. Please make sure the to replace QM1, QM2 with your actual Queue Manager name.

Examples;
# HOST DEFINITIONS
QM1_HOST=127.0.0.1
QM1_PORT=1414
QM1_SVRCONN=SYSTEM.DEF.SVRCONN
QM1_DEFAULT_QNAME=V2R.WBI.ERROR
QM1_MQUSER=
QM1_MQUSERPASS=
QM1_SSL=N
QM1_SSL_CHIP_SUITE=SSL_RSA_WITH_RC4_128_MD5
QM1_SSL_TRUSTSTORE=
QM1_SSL_TRUSTPASS=
QM1_SSL_KEYSTORE=
QM1_SSL_KEYPASS=

QM2_HOST=127.0.0.1
QM2_PORT=1421
QM2_SVRCONN=TEST.SVRCONN
QM2_DEFAULT_QNAME=V2R.WBI.ERROR
QM2_MQUSER=
QM2_MQUSERPASS=
QM2_SSL=Y
QM2_SSL_CHIP_SUITE=SSL_RSA_WITH_RC4_128_MD5
QM2_SSL_TRUSTSTORE=C:/IBM/WebSphereMQ/Qmgrs/TEST3/ssl/keyStore
QM2_SSL_TRUSTPASS=test01
QM2_SSL_KEYSTORE=C:/IBM/WebSphereMQ/Qmgrs/TEST3/ssl/keyStore
QM2_SSL_KEYPASS=test01


Running

cd your_install_dir
java -jar -Xms256m -Xmx1024m msgmanager.jar


You can choose the pre-configured Queue Manager from the Queue Manager drop down (or) you can enter a different Queue Manager configuration manually.

To display from messages from your local queue manager, you just need to enter Queue Manager Name, and Host Name. The tool will use MQ binding instead of client Connection.

Starting Msg#: To retrieve by message index.
Retrieve#Rows: number of messages to be retrieved
Convert CCSID?: To convert message data to current locale, for example from EBCDIC.
Go Button: To retrieve messages from a Queue. By default, 100 messages will be retrieved from a Queue, use “Retrieve#Rows” to change the count.
Put Message Button: To write messages to a Queue.
Show Q’s Button: To load Queue Names of a Queue Manager into the ComboBox list.


Right click on the retrieved message to display various options available.


Select All

This option will highlight all the displayed messages
Write to File
Write selected messages to an output file without the MQ headers. You will have the option to write to single file, or multiple files if selected multiple messages.
Write to File w/Headers
Output complete MQ Message(s) with the MQ headers to file. You will have the option to write to single file, or multiple files if selected multiple messages.


Delete Selected
Delete one or more messages from the Queue provided your ID has delete access to the Queue.
Delete All
Delete all messages from the Queue provided your ID has delete access to the Queue.
Download Messages
To download the entire Q of messages to a file.
Clear Queue
To purge the Queue data.


Copy to Queue
To copy messages from one Queue to another to the same or a different queue manager.


Resubmit
Ability to resubmit message back to the input Queue that the message was originally processed from. Especially useful when dealing with WBI Adapters. For example, you can process the adapter “Failed Events” by resubmitting them back to the input queue


Note: To use this feature, you need to make sure MQRFH2.replyToQueue, and MQRFH2.replyToQueueManager fields are populated.

Filter messages
To filter retrieved messages on a specific value, for example display messages that has invoice number “12345”.


Sorting by header column

Sort messages after they are retrieved (Can sort on any column).

Display Message Details
Double click on message to view complete message body, including headers.
This is similar to IBM SupportPack IH03 (the famous rfhutil) utility.


Here you can format message depending on message type;
**Character – to view as character data.
**EBCDIC – to display EBCDIC data.
**XML – Parse, and format xml data.
**JSON – Parse, and format json data.
**COBOL – Parse, and format using a COBOL copybook.

Browse Button: view message using a default system browser.
COBOL message, formatting with Copybook;


Put Message Button


3.4.1 Open File
To load a MQ Message from a file.

Write to Q Button
Use this button to write a message to a Queue.

Troubleshooting
1) Unauthorized error 2035
AMQERR01.LOG logs 2035 on SYSTEM.DEFAULT.MODEL.QUEUE.
Grant +dsp access to SYSTEM.DEFAULT.MODEL.QUEUE
setmqaut -m QMGR -t q -n SYSTEM.DEFAULT.MODEL.QUEUE -p user +dsp

Acknowledgements
I would like to thank Mike (Shenfu) Fan. and Oliver Fisse from IBM Software Services ISSW team, for reviewing and helping to improve this article.


Downloads
Latest version: https://community.ibm.com/community/user/integration/viewdocument/mq-message-manager-update?CommunityKey=d974a63b-37b1-4759-8c62-a9d4a6f71297

07/22/2022 - Verskon 2.9 - included IBM MQ v9.3.0 jar files + fixes
https://community.ibm.com/community/user/integration/viewdocument/mq-messge-manager-v29?CommunityKey=183ec850-4947-49c8-9a2e-8e7c7fc46c64

Previous version:
zip binary: mqmsgman-v28

9 comments on"MQ Message Manager Utility"

  1. Sanyo Alexis June 04, 2020

    Thanks for this tool. Its really helpful to use without installation.

    I tried to connect to a Queue manger in the Linux server. The connection was successful and I can browse the messages. But only the first 2 messages are displayed, even though the queue depth is 7. Couldn’t find any options to set the browse limit. Is there any way to see all the messages

    Reply (Edit)
    • Sudhakar Bodapati June 04, 2020

      Hello, Can you make sure if all the messages are commited? If they are committed, can you check if anything logged in the java console or “Help > View Log” to see for errors. Thank you.

      Reply (Edit)
  2. Phil Dickinson February 04, 2020

    Hi Sudhaker,

    Great tool.

    How about adding a Queue Manager summary screen just like MQ Explorer? It would be nice to see all the queues in a table with queue depths etc.

    Regards
    Phil

    Reply (Edit)
  3. Tony Flavell December 18, 2019

    Hi

    I tried to install as per the instruction above but I’m this error –
    c:\IBM MQ Message Manager\mqmsgman-v28>java -jar -Xms256m -Xmx1024m msgmanager.jar
    Exception in thread “main” java.lang.ExceptionInInitializerError
    Caused by: java.util.MissingResourceException: Can’t find bundle for base name properties/MsgManager_RB, locale en_GB
    at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
    at java.util.ResourceBundle.getBundleImpl(Unknown Source)
    at java.util.ResourceBundle.getBundle(Unknown Source)
    at com.esbtech.framework.swing.SResourceMgr.(SResourceMgr.java:22)
    at com.esbtech.mq.msgmanager.MsgManager.(MsgManager.java:167)

    Reply (Edit)
    • Sudhakar Bodapati December 18, 2019

      Please rename MsgManager_RB_en_US.properties to MsgManager_RB_en_GB.properties as the tool is looking for a properties file for the Locale. The file is in the properties folder.
      To avoid other messages, you should also rename the GLOBALS and Message_RB properties files to your locale:

      GLOBALS_en_GB.properties
      Message_RB_en_GB.properties
      MsgManager_RB_en_GB.properties

      Reply (Edit)
  4. Michel July 25, 2019

    Ok, it throws 2046 error with no details.
    MQ version is 5.3
    Is it supported?

    Reply (Edit)
    • Sudhakar Bodapat July 26, 2019

      MQv5.3 Probably doesn’t work, it’s pretty old version.

      Reply (Edit)
  5. Michel July 25, 2019

    Does it work with Queue Managers named with underscore character? e.g. QM_test_1

    Reply (Edit)
    • Sudhakar Bodapat July 29, 2019

      Yes, it does support queue manager names with underscores.
      07/26/19 10:26:06: QM_TEST_1 Connected to Queue Manager…..
      Connected to Queue Manager….QM_TEST_1
      Retrieving messages from Queue…..SYSTEM.DEAD.LETTER.QUEUE

      Reply (Edit)


Comments

Thu September 02, 2021 12:50 PM

It would be nice if the Queue Name display is wider and able to filter out Queue Types and System.* Queues.