TRACE

TRACE controls runtime library tracing activity, the size of the in-storage trace table, the type of trace events to record, and it determines whether a dump containing, at a minimum, the trace table should be unconditionally taken when the application terminates. When you specify TRACE(ON), user-requested trace entries are intermixed with Language Environment trace entries in the trace table.

Under normal termination conditions, if TRACE is active and you specify DUMP, only the trace table is written to the dump report, independent of the TERMTHDACT setting. Only one dump is taken for each termination. Under abnormal termination conditions, the type of dump taken (if one is taken) depends on the value of the TERMTHDACT runtime option and if TRACE is active and the DUMP suboption is specified.

The default value for non-CICS applications is TRACE(OFF,4K,DUMP,LE=0).

The default value for CICS® applications is TRACE(OFF,4K,DUMP,LE=0).

The default value for AMODE 64 applications is TRACE(OFF,4K,DUMP,LE=0).

Read syntax diagramSkip visual syntax diagram
Syntax

             .-OFF-.                        .-DUMP---.      
>>-TRACe--(--+-----+--,--+------------+--,--+--------+--,------->
             '-ON--'     '-table_size-'     '-NODUMP-'      

   .-LE=0--.      
>--+-LE=1--+--)------------------------------------------------><
   +-LE=2--+      
   +-LE=3--+      
   '-LE=20-'      

OFF
Indicates that the tracing facility is inactive.
ON
Indicates that the tracing facility is active.
table_size
Determines the size of the tracing table as specified in bytes (nK or nM). The upper limit is 16M - 1 (1666777215 bytes). Restriction: This option is ignored in a 64–bit environment and the size is set to 1M.
DUMP
Requests that a Language Environment-formatted dump (containing the trace table) be taken at program termination regardless of the setting of the TERMTHDACT runtime option.
NODUMP
Requests that a Language Environment-formatted dump not be taken at program termination.
LE=0
Specifies that no trace events be recorded.
LE=1
Specifies that entry to and exit from Language Environment member libraries be recorded (such as, in the case of C, entry and exit of the printf() library function).
LE=2
Specifies that mutex init/destroy and locks/unlocks from Language Environment member libraries be recorded.
LE=3
Activates both the entry/exit trace and the mutex trace.
LE=20
Specifies that XPLINK/non-XPLINK transition should be recorded.

Usage notes

  • PL/I MTF consideration—The TRACE(ON,,,LE=2) setting provides the following trace table entries for PL/I MTF support:
    • Trace entry 100 occurs when a task is created.
    • Trace entry 101 occurs when a task that contains the tasking CALL statements is terminated.
    • Trace entry 102 occurs when a task that does not contain the tasking CALL statements is terminated.
  • When running PL/I with POSIX(ON) in effect, no PL/I-specific trace information is provided.
  • When you specify LE=20:
    • AMODE 64 applications have no transitions.
    • Transitions across OS_UPSTACK linkage are not recorded.
  • When TRACE(OFF) is specified, Language Environment activates tracing when a pthread_create() is done and a debugger is being used.
  • COBOL does not provide any Trace Table Entries.

For more information