mqperfck (MQ performance check)

Use the mqperfck command to help understand the performance of your queue manager.

Purpose

The command can be used to gather information about the CPU and Log resources being used by a queue manager, and the activity on local queues and sender channels. Run this command when the work being processed by your queue is low, and when it is high, to compare the impact of different workloads on the queue manager.

The command produces an HTML report summarizing the workload, which is written to the mqdiag: directory on the appliance.

View the report in a web browser.

Syntax

Read syntax diagramSkip visual syntax diagrammqperfck -h|?  -m QMgrName -q QueueName -s SenderChannel -n Iterations -u User -N

Required parameters

None.

Optional parameters

-h or -?
Display usage help text and exit.
-m QmgrName
The name of queue manager to connect to. If this is not specified, the command will attempt to connect to the default queue manager.
-q QueueName
The name of a local queue to analyze. You can analyze up to 10 queues by repeating this parameter. The queue must exist, it must be a local queue, and the user running the tool must have permission to open the queue for inquire.
-s SenderChannel
The name of a sender channel to analyze. You can analyze up to 10 channels by repeating this parameter. The channel must exist, it must have attribute CHLTYPE(SDR), and the MONCHL attribute of the channel must be set to either LOW, MEDIUM, or HIGH. If the channel’s MONCHL attribute is MQMON_Q_MGR, then the MONCHL attribute of the queue manager must be LOW, MEDIUM, or HIGH.
If the channel’s transmission queue has not been provided on the command line using the -q parameter, and fewer than 10 queues have been requested, then the transmission queue will be automatically added to the list of queues that will be analyzed.
-n Iterations
The number of sampling iterations to perform. The default is 6. A new iteration begins when the queue manager publishes a set of resource statistics which typically happens every 10 seconds.
-u User
The user id to be used to authenticate the connection to the queue manager. If this parameter is specified, the command will prompt for a password. The password will not be displayed on the screen.
-N
Suppresses translation of the report.

Granting permissions to run the command

To subscribe to the system statistics, the command must be run by a member of the mqm group or a user who has permissions to topics in the $SYS/MQ branch of the topic tree. For more information, see System topics for monitoring and activity trace.

In addition, the command needs the following permissions to run:

Table 1. Permissions needed for each object type
Object name Object type Permissions
QmgrName qmgr +connect +inq +dsp
SYSTEM.DEFAULT.MODEL.QUEUE queue +get +dsp
SYSTEM.ADMIN.COMMAND.QUEUE queue +put
SYSTEM.ADMIN.TOPIC topic +sub
For each queue named on the command line (and any channel’s transmission queues which are automatically added by the command) add the following permissions:
Table 2. Additional permissions for queues
Object name Object type Permissions
QueueName Queue +inq

For each channel named on command line add the following permissions:

Table 3. Additional permissions for channels
Object name Object type Permissions
ChannelName Channel +dsp

Examples

The following command creates a report containing six iterations of CPU and Log statistics for the default queue manager:
[mqm@mq-host ~]$ mqperfck
Connected to queue manager DFT.QMGR.
Creating file: mqperfcheck_DFT.QMGR_2024-12-20_132743-0.html
Waiting for messages.
Processing iteration 1 of 6.
Processing iteration 2 of 6.
Processing iteration 3 of 6.
Processing iteration 4 of 6.
Processing iteration 5 of 6.
Processing iteration 6 of 6.
Writing report summary.
The following command creates a report with three iterations of statistics for queue manager SENDER.QM, queue TESTQ, and channel TO.RECEIVER.QM. The report includes information about the channel’s transmission queue:
mqa(mqcli)# mqperfck -m SENDER.QM -q TESTQ -s TO.RECEIVER.QM -n 3
Connected to queue manager SENDER.QM.
Creating file: mqperfcheck_SENDER.QM_2024-12-20_133202-0.html
Waiting for messages.
Processing iteration 1 of 3.
Processing iteration 2 of 3.
Processing iteration 3 of 3.