Description:
You have created some CICS logstreams but they remain empty. Why? What else might be needed?
Solution:
Firstly, in parmlib member CICSOPTS you will need to set up the logger names to be used by a CICS region, e.g.
)IF JOBNAME=xxxxxxxA LOGGER-NAME CICSLOGA SUBSYSTEM-ID GSVB DUMP-MANAGEMENT YES DUMP-MANAGEMENT-MEMBER CICSDMPM LIFETIME-EXCLUDE 30 LIFETIME-RANGE1 0.5 LOG-EXCEPTIONS YES LOG-SYSTEM-DATA YES LOG-TRANSACTION-SUMMARY YES TRANSACTION-GROUPS YES MONITOR-PERFORMANCE NO )ENDIF )IF JOBNAME=xxxxxxxB LOGGER-NAME CICSLOGB SUBSYSTEM-ID GSVB DUMP-MANAGEMENT YES DUMP-MANAGEMENT-MEMBER CICSDMPM LIFETIME-EXCLUDE 30 LIFETIME-RANGE1 0.5 LOG-EXCEPTIONS YES LOG-SYSTEM-DATA YES LOG-TRANSACTION-SUMMARY YES TRANSACTION-GROUPS YES MONITOR-PERFORMANCE NO )ENDIF
Secondly, you will need to set up the logger names in parmlib member CICSLOGR, e.g.
)IF CICSLOGR=CICSLOGA ISERVE-NAME ISRV LOG-EXCEPTIONS-SMF YES LOG-SYSTEM-DATA-SMF YES LOG-TRANSACTION-SUMMARY-SMF NO LOG-TRANSACTIONS-SMF NO LOGSTREAM-CICSSYSD-DELETE-ALL NO LOGSTREAM-CICSSYSD-NAME &G$UNIQID..CICSLOGA.SYSD.&SMFID LOGSTREAM-CICSTRAN-DELETE-ALL NO LOGSTREAM-CICSTRAN-NAME &G$UNIQID..CICSLOGA.TRAN.&SMFID LOGSTREAM-CICSTSUM-DELETE-ALL NO LOGSTREAM-CICSTSUM-NAME &G$UNIQID..CICSLOGA.TSUM.&SMFID LOGSTREAM-CICSXLOG-DELETE-ALL NO LOGSTREAM-CICSXLOG-NAME &G$UNIQID..CICSLOGA.XLOG.&SMFID SMF-RECORD-TYPE 255 STARTUP-COMMANDS YES STARTUP-COMMANDS-MEMBER CICSCMDS )ENDIF )IF CICSLOGR=CICSLOGB ISERVE-NAME ISRV LOG-EXCEPTIONS-SMF YES LOG-SYSTEM-DATA-SMF YES LOG-TRANSACTION-SUMMARY-SMF NO LOG-TRANSACTIONS-SMF YES LOGSTREAM-CICSSYSD-DELETE-ALL NO LOGSTREAM-CICSSYSD-NAME &G$UNIQID..CICSLOGB.SYSD.&SMFID LOGSTREAM-CICSTRAN-DELETE-ALL NO LOGSTREAM-CICSTRAN-NAME &G$UNIQID..CICSLOGB.TRAN.&SMFID LOGSTREAM-CICSTSUM-DELETE-ALL NO LOGSTREAM-CICSTSUM-NAME &G$UNIQID..CICSLOGB.TSUM.&SMFID LOGSTREAM-CICSXLOG-DELETE-ALL NO LOGSTREAM-CICSXLOG-NAME &G$UNIQID..CICSLOGB.XLOG.&SMFID SMF-RECORD-TYPE 255 STARTUP-COMMANDS YES STARTUP-COMMANDS-MEMBER CICSCMDS )ENDIF )EOF Logical End Of File
Thirdly, you will need to update the LGLOOKUP parmlib member to enable reading of the logger files, e.g.
*Sysname Logname......... LogStream-Name............| SA11 CICSLOGA.TRAN &G$UNIQID..CICSLOGA.TRAN.&SMFID SA11 CICSLOGA.TSUM &G$UNIQID..CICSLOGA.TSUM.&SMFID SA11 CICSLOGA.SYSD &G$UNIQID..CICSLOGA.SYSD.&SMFID SA11 CICSLOGA.XLOG &G$UNIQID..CICSLOGA.XLOG.&SMFID SA11 CICSLOGB.TRAN &G$UNIQID..CICSLOGB.TRAN.&SMFID SA11 CICSLOGB.TSUM &G$UNIQID..CICSLOGB.TSUM.&SMFID SA11 CICSLOGB.SYSD &G$UNIQID..CICSLOGB.SYSD.&SMFID SA11 CICSLOGB.XLOG &G$UNIQID..CICSLOGB.XLOG.&SMFID
What LGLOOKUP offers is the ability to define inactive log streams, as well as the active stream names contained in the SMFDATA/CICSLOGR/SYSDATA members. This is useful if the names are changed, allowing the inactive log streams to be browsed or selected from LGLOGS.
Finally, you will need to issue a START command inside of parmlib member SYSVIEW to start the loggers at SYSVIEW STC initialization, e.g.
)IF FEATURE=CICS START CICSLOGR.CICSLOGA START CICSLOGR.CICSLOGB START CICSLOGR.CICSLOGR )ENDIF
You will notice that there is still a start-up for the default logger name of CICSLOGR just in case SYSVIEW is to be started in any other regions and you want to enable the statistics for them.
Don't forget that any parmlib updates must precede the )EOF line to be effective.