Journal records can be written by any of the following CICS components: the
logger, journal control (in the case of a request issued by a user), file control, the
front end programming interface (FEPI), and terminal control. The field
GLRH_REC_COMPID in the record header tells you which component has written
the record: LG, UJ, FC, SZ, or TC respectively.
File control adds information to the start of the actual journaled data, and this is
described in “Caller data written by file control.” The other components (journal
control, FEPI, and terminal control) do not add any further information to the
journaled data.
If the record has been written by the CICS API, the caller data section starts with an
API user header, the format of which is shown in Figure 77.
CL_UH_LENGTH
4-byte header length.
CL_UH_JOURNAL_TYPE
2-byte journal type.
Reserved
2-byte reserved field.
CL_UH_PREFIX_LENGTH
4-byte prefix length.
Prefix Variable-length prefix area.
User data
Variable-length user data.
Caller data written by file control
The file log and journal block (FLJB) describes the caller data that file control writes
as part of its journal records. The copybook DFHFCLGD defines the FLJB DSECT.
There are two sections in the FLJB: the first section contains data that is applicable
to all journal records written by file control; the second section contains information
specific to the record type. Both sections are of fixed length.
UserdataPrefixareaPrefixlength
Journaltype
24
42
Headerlength
CL_UH_LENGTH
CL_UH_JOURNAL_TYPE
CL_UH_PREFIX_LENGTH
Reserved
Variablelength
Fixedlength
Figure 77. Format of the API user header
Chapter 27. CICS logging and journaling 717