Journal records

Journal records are written to a log stream either directly from a user application program or from a CICS® management program on behalf of a user application.

Journal records can be written from a user application using the WRITE JOURNALNAME API command. You enable or disable a journal from an application program with the SET JOURNALNAME SPI command.

Access to journaled data in log streams is provided through an MVS™ subsystem interface (SSI), LOGR. Your existing user programs can read the general log streams, providing you specify the SUBSYS parameter and supporting options on the DD for log streams in your batch job JCL. If you specify the LOGR subsystem name on the SUBSYS parameter, LOGR can intercept data set open and read requests at the SSI and convert them into log stream accesses.

Depending on the options specified on the SUBSYS parameter, general log stream journal records are presented in one of two ways:
  • In the record format used at CICS/ESA 4.1 and earlier, for compatibility with older utilities (selected by the COMPAT41 option)
  • In the CICS Transaction Server for z/OS® format for newer or upgraded utilities that needed to access log record information.

CICS system log records are available only in the CICS Transaction Server for z/OS format, so you must ensure that any utilities that handled system log records in releases before CICS Transaction Server for z/OS are converted to handle this format.

Journal records can be read offline by user-written programs. You can generate the DSECTs that such programs require by including certain statements in the program code:
  • For records in the CICS Transaction Server for z/OS format on general logs, offline user-written programs can map journal records by including an INCLUDE DFHLGGFD statement. This statement generates the assembler version of the DSECT.
  • For records formatted with the COMPAT41 option, offline user-written programs can map journal records by issuing the DFHJCR CICSYST=YES statement, which results in the DFHJCRDS DSECT being included in the program.

    The generated DSECT is the same as the DSECT that is obtained for CICS programs by the COPY DFHJCRDS statement. The only difference is that the fields are not preceded by a CICS storage accounting area. The DSECT is intended to map journal records directly in the block, rather than in a CICS storage area.