runmqdlq (run dead-letter queue handler)

Start the dead-letter queue handler to monitor and process messages on the dead-letter queue.

Purpose

Use the runmqdlq command to start the dead-letter queue (DLQ) handler, which monitors and handles messages on a dead-letter queue.

This command is used on servers. If you want client mode you should compile amqsdlq in client mode. See The sample DLQ handler amqsdlq for more information.

Syntax

Read syntax diagramSkip visual syntax diagram runmqdlq  QName  QMgrName  -u UserID

Description

Use the dead-letter queue handler to perform various actions on selected messages by specifying a set of rules that can both select a message and define the action to be performed on that message.

The runmqdlq command takes its input from stdin. When the command is processed, the results and a summary are put into a report that is sent to stdout.

By taking stdin from the keyboard, you can enter runmqdlq rules interactively.

By redirecting the input from a file, you can apply a rules table to the specified queue. The rules table must contain at least one rule.

If you use the DLQ handler without redirecting stdin from a file (the rules table), the DLQ handler reads its input from the keyboard:
  • [AIX][Linux]On AIX® and Linux®, the DLQ handler does not start to process the named queue until it receives an end_of_file (Ctrl+D) character.
  • [Windows]On Windows, the DLQ handler does not start to process the named queue until you press the following sequence of keys: Ctrl+Z, Enter, Ctrl+Z, Enter.

For more information about rules tables and how to construct them, see The DLQ handler rules table.

Optional parameters

The MQSC command rules for comment lines and for joining lines also apply to the DLQ handler input parameters.

QName
The name of the queue to be processed.

If you omit the name, the dead-letter queue defined for the local queue manager is used. If you enter one or more blanks (' '), the dead-letter queue of the local queue manager is explicitly assigned.

QMgrName
The name of the queue manager that owns the queue to be processed.

If you omit the name, the default queue manager for the installation is used. If you enter one or more blanks (' '), the default queue manager for this installation is explicitly assigned.

-u UserID
If you use the -u parameter to supply a user ID, you are prompted for a matching password.

If you have configured the CONNAUTH AUTHINFO record with CHCKLOCL(REQUIRED) or CHCKLOCL(REQDADM), you must use the -u parameter otherwise you will not be able to start a dead-letter queue handler for your queue manager with runmqdlq.

If you specify this parameter and redirect stdin, a prompt will not be displayed and the first line of redirected input should contain the password.