JNI tracing

Enable JNI trace by setting environment variables, by using a ctgstart command override, or when starting an application in local mode.

  • While the CICS® Transaction Gateway is running, use the MVS MODIFY command to enable JNI trace:
    /F JOB_NAME,APPL=TRACE,JNILEVEL=1
  • When you start the CICS Transaction Gateway, issue the command:
    ctgstart -j-Dgateway.T.setJNITFile=filename
    where filename is the name of the file to which trace output is to be sent. If you do not specify a full path to the file, the location is <install_path>/bin.
  • Set the following environment variables before you start the CICS Transaction Gateway or Java™ Client applications running in local mode:
    CTG_JNI_TRACE
    Use this environment variable to set the name of the JNI trace file. This environment variable only defines the name of the JNI trace file; it does not enable trace. JNI trace is output as plain text, and there is no requirement to use a particular extension for the file name.
    CTG_JNI_TRACE_ON
    Set this environment variable to YES (case-insensitive) to enable JNI trace when the CICS Transaction Gateway or Java Client application is started.
  • For Java Client applications running in local mode, use Java to launch your application and set the system property gateway.T.setJNITFile, as shown in the following example:
    java -Dgateway.T.setJNITFile=filename application
    where
    • filename is the name of the file to which trace output is to be sent
    • application is the application to launch

When JNI tracing is enabled, some trace points might be written from threads running under different user IDs. To ensure that all trace points can be written to an existing file, change the permissions to allow all users to write to it:
chmod a+w filename
Do not allow more than one process to write to the same trace file, because this can cause trace points to be lost.