Debugging your IBM PASE for i programs

The PASE for i runtime environment provides library support for the syslog() runtime function, and a syslogd binary file for more sophisticated message routing. In addition, you can use existing facilities in the IBM® i operating system, such as job logs for diagnostic messages and severe messages that are sent to the system operator message queue QSYSOPR.

Depending on the application, your strategy for debugging an PASE for i application can take different paths:

  1. If the application does not require any IBM i integration (for instance, with Db2® for i or with ILE functions), first debug the application on AIX®.
  2. Use a combination of PASE for i dbx and IBM i debug capabilities (for example, job logs) to debug the application on the IBM i operating system.

Applications that you have coded to use database or ILE functions cannot be fully tested on AIX, but you can debug the remaining parts of the application on AIX to assure their proper structure and design.

Using dbx in PASE for i

PASE for i supports the AIX dbx debugger utility. The utility lets you debug related processes, such as parent and child, at the source code level, if they were compiled as such. You can use the Network File System (NFS) to make the AIX source visible to the debugger that runs in PASE for i.

PASE for i support for xterm and aixterm lets you use dbx to debug both the parent and child processes. dbx launches another xterm window with dbx attached to the second process.

For details on dbx, see the IBM AIX operating system: Library Web site. You can also type help on the dbx command line.

Using IBM i debugging tools

You can use the following tools on IBM i to debug your PASE for i applications:
  • The IBM i Debugger provides specific support for PASE for i application debugging.
  • The ILE C source debugger is an effective tool for determining problems with your code.