Tracing with the AIX system trace

In addition to the IBM MQ trace, IBM MQ for AIX users can use the standard AIX system trace.

Note: We should use the aix option, only when directed to do so by IBM service personnel. AIX system tracing is a three-step process:
  1. Set the -o parameter on the strmqtrc command to aix.
  2. Gather the data, then run the endmqtrc command.
  3. Format the results.

IBM MQ uses two trace hook identifiers:

    X'30D'
    This event is recorded by IBM MQ on entry to or exit from a subroutine.

    X'30E'
    This event is recorded by IBM MQ to trace data such as that being sent or received across a communications network.

Trace provides detailed execution tracing to help you to analyze problems. IBM service support personnel might ask for a problem to be re-created with trace enabled. The files produced by trace can be very large so it is important to qualify a trace, where possible. For example, we can optionally qualify a trace by time and by component.

There are two ways to run trace:
  1. Interactively. The following sequence of commands runs an interactive trace on the program myprog and ends the trace.
    trace -j30D,30E -o trace.file
    ->!myprog
    ->q
    
  2. Asynchronously. The following sequence of commands runs an asynchronous trace on the program myprog and ends the trace.
    trace -a -j30D,30E -o trace.file
    myprog
    trcstop
    

We can format the trace file with the command:

trcrpt -t MQ_INSTALLATION_PATH/lib/amqtrc.fmt trace.file > report.file

MQ_INSTALLATION_PATH represents the high-level directory in which IBM MQ is installed.

report.file is the name of the file where we want to put the formatted trace output.

Note: All IBM MQ activity on the machine is traced while the trace is active. Parent topic: Use trace on UNIX and Linux systems