RPG Trace Tool

The open source TSX trace tool helps RPG developers with programming tasks such as:

  • Debugging a program
  • Understanding the flow of subroutines and procedures in complex programs
  • Following the call stack progression for subroutines and procedures
  • Understanding the sequence of database activities in complex programs
  • Locating all instances where a variable’s value was modified
  • Identifying all variables modified by a subroutine or procedure
  • Identifying the statements that execute for any given transaction type
  • Evaluating completeness of test case coverage

You can download the software by clicking on the link below. The zip file contains the source code in the form of a save file, documentation and an example of trace data. The documentation explains how to transfer the save file to your IBM i and how to install the software.

See example trace data in Excel
See pdf documentation
Download the software and everything else

How you normally use the tool

  • TRACESTR yourpgm
  • CALL yourpgm
  • TRACEEND (returns msg with tracerun#)
  • Select * from TRACEMST where TRACERUN=tracerun#

A couple important notes:

Compiling your program – it must be compiled with a debugging view of *SOURCE
Running your program – after you start the trace and call your program, a window will appear with cryptic messages – just press enter

The tool works with RPGLE source code, both fixed and free format. It has not been modified for unconverted RPG code.

The software is provided as-is at no charge under the terms of the GNU General Public License. This tool builds on work originally published by Eitan Rosenberg.

The following images show:

  • Diagram of how the trace tool works
  • List of fields in the trace file which you can query with SQL
  • Example of one use case