CMAS journaling

A CICSPlex® SM address space (CMAS) is capable of producing CICS® journal records to track a variety of activities in the CICSplex. These journal records provide an audit trail that can aid in the recovery of data or the reconstruction of events that affected the CICSplex. A journal record can be written when:

For example, when a CMAS serves as the temporary maintenance point, it temporarily stores in its data repository any definitions that you add, update, or remove. When the maintenance point CMAS resumes operation, the temporary information is removed. You can obtain journal records of what is added to and deleted from the data repository for the temporary maintenance point.

The journal records are stored in a 32KB buffer and are flushed to the corresponding log streams when the buffer becomes full or when a normal shutdown of the CICS region is initiated.

To force the buffer to be flushed to a log stream when the CICS region is still active, you could specify the WAIT option on the WRITE JOURNALNAME command using EXEC CICS or the CECI transaction.

To request one or more of the record types, specify the appropriate CICSPlex SM system parameters in the startup JCL of a CMAS:

JRNLDEFCH(YES)
For data repository definition changes
JRNLOPACT(YES)
For operations actions
JRNLRTAEV(YES)
For real-time analysis events

For more information on these parameters, see CICSPlex SM system parameters.

If you do not want to use the CICSPlex SM default log stream name of EYUJRNL, you must define a JOURNALMODEL resource in the CSD that has the desired log stream name. The distributed CMAS resource definition group and group list are protected from modification. Thus, to make the JOURNALMODEL resource definition available during CMAS initialization, you must create a new CMAS group list that includes the group containing the JOURNALMODEL resource definition. To add the JOURNALMODEL resource to the CSD, either edit and run the JCL contained in sample member CICSTS31.CPSM.SEYUSAMP(EYUJRNE$) to execute batch utility DFHCSDUP or use the CICS CEDA transaction. Performing either of these steps does the following:

You must also update the CICS system initialization (SIT) parameters used to start the CMAS by setting the GRPLIST parameter to reference the new group list.

The journal records produced by a CMAS contain data mapped by a DSECT called EYUBCPJR. Each record consists of a standard prefix and a variable data area. The contents of the data area are specific to the type of journal record being written.

Figure 60 shows the format of EYUBCPJR.

Figure 60. The EYUBCPJR DSECT
*---------------------------------------------------------------------*
*                EYUBCPJR DSECT Prefix                                *
*---------------------------------------------------------------------*
EYUBCPJR       DSECT
EYUBCPJR       DS   0D
 
CPJR_PREFIX     DS   0D                  Prefix of record
CPJR_CMASNAME   DS   CL8                 CMAS Name which produced record
CPJR_CONTEXT    DS   CL8                 Plex Name
CPJR_SCOPE      DS   CL8                 Scope Name
CPJR_USER       DS   CL8                 User Name
CPJR_STCK       DS   D                   Store clock
CPJR_VERSION    DS   H                   Current record version
CPJR_VER_ZERO   EQU  0000                VersionStart of change 0End of change
Start of changeCPJR_VER_ONE    EQU  0001                Version 1End of change
Start of changeCPJR_VER_CURR   EQU  CPJR_VER_ONE        Current VersionEnd of change
CPJR_TYPE       DS   H                   Record type
CPJR_TYPE_DEFCH EQU  0001                Definition Add/Change/Delete
CPJR_TYPE_RTAEV EQU  0002                Rta Event
CPJR_TYPE_OPACT EQU  0003                Operation action
CPJR_LENGTH     DS   F                   Length of entire record plus  x
                                         prefix area
                DS   FL8                 Available for use
CPJR_LEN        EQU  *-CPJR_PREFIX       Length of Prefix area
CPJR_DATA_AREA  DS   0H                  Data area
 
*---------------------------------------------------------------------*
*                Data record for RTA Events                           *
*---------------------------------------------------------------------*
 
CPJR_RTA_DATA     DS   0H
CPJR_RTA_TYPE     DS   X                   Record type
CPJR_RTATYPE_CRT  EQU  0001                 Event Created
CPJR_RTATYPE_REM  EQU  0002                 Event Removed
CPJR_RTATYPE_UPD  EQU  0003                 Event Updated
CPJR_RTATYPE_RES  EQU  0004                 Event Resolved
CPJR_RTA_GTYPE    DS   X                   Generated by type
CPJR_RTAGTYPE_SAM EQU  0001                 Event produced by Sam
CPJR_RTAGTYPE_APM EQU  0002                 Event produced by Apm
CPJR_RTAGTYPE_MRM EQU  0003                 Event produced by Mrm
CPJR_RTA_EVENT    DS   CL8                 Event Name
CPJR_RTA_MSGSTRT  DS   CL30                External Entry Message
CPJR_RTA_MSGEND   DS   CL30                External Exit Message
CPJR_RTA_EVENTXT  DS   CL30                Event Text
CPJR_RTA_SEVERITY DS   CL3                 Severity Level
CPJR_RTA_DATA_L   EQU *-CPJR_RTA_DATA      Length of the record
*---------------------------------------------------------------------*
*                Data record for Definition changes                   *
*---------------------------------------------------------------------*
 
CPJR_DEF_DATA    	   	 DS   0H
CPJR_DEF_TYPE    	   	 DS   X               Record type
CPJR_DEFTYPE_ADD 		    EQU  0001             Definition Added
CPJR_DEFTYPE_DEL 		    EQU  0002             Definition Deleted
CPJR_DEFTYPE_UPD 	   	 EQU  0003             Definition Update
                  	  	 DS   X               Reserved
CPJR_DEF_MAJORNM  		   DS   CL8             Major Name
CPJR_DEF_MAJORID 		    DS   CL8             ADMIN Restype
CPJR_DEF_MAJORVR   		  DS   Start of changeXL4End of change             Major Version
Start of changeCPJR_DEF_MAJORVR_NONE  EQU  -1              Major Version NoneEnd of change
CPJR_DEF_MINORNM 			   DS   CL8             Minor Name
CPJR_DEF_MINORID 			   DS   CL8             ADMIN Restype
CPJR_DEF_MINORVR 			   DS   Start of changeXL4End of change             Minor Version
Start of changeCPJR_DEF_MINORVR_NONE  EQU  -1              Minor Version NoneEnd of change
CPJR_DEF_SYSID   			   DS   Start of changeCL8End of change             System Id where change       x
                            			               was originated
CPJR_DEF_DATA_L  				  EQU *-CPJR_DEF_DATA  Length of the record

*---------------------------------------------------------------------*
*                Data record for Operation commands                   *
*---------------------------------------------------------------------*
 
CPJR_OPS_DATA    DS   0H
CPJR_OPS_LENGTH  DS   H                   Length of fixed and variable x
                                           portion of data area
CPJR_OPS_NUMFLDS DS   H                   Number of fields
CPJR_ACTION      DS   CL12                Name of action

CPJR_RESNAME     DS   CL8                 Resource Name
CPJR_OPS_STRTENT DS   0C                  Start of data entries
CPJR_OPS_DATA_L  EQU *-CPJR_OPS_DATA      Length of the record
*
CPJR_OPS_ENTRY   DS   0C
CPJR_OPS_FIELD   DS   CL12                Field Name
CPJR_OPS_DATALEN DS   X                   Length of the Data
CPJR_OPS_ENTLEN  DS   X                   Length of entire entry
CPJR_OPS_FLDDATA DS   0C                  Start of the Data
CPJR_OPS_ENT_L   EQU  *-CPJR_OPS_ENTRY    Fixed portion length

For information on writing a program to access and format CICS journal records, refer to the CICS Customization Guide.

[[ Contents Previous Page | Next Page Index ]]