Using OPERLOG

The operations log (OPERLOG) is a log stream that uses the system logger to record and merge communications about programs and system functions from each system in a sysplex. Only the systems in a sysplex that have specified and activated the operations log will have their records sent to OPERLOG. For example, if a sysplex has three systems, SYS A, SYS B, and SYS C, but only SYS A and SYS B activate the operations log, then only SYS A and SYS B will have their information recorded in the operations log.

IBM® recommends that JES3 customers with a multisystem sysplex use an OPERLOG coupling facility log stream and turn off JES3 DLOG and SYSLOG.

You can also use OPERLOG as a DASD-only log stream. This method is only suitable for a single system sysplex, because a DASD-only log stream is single-sysplex in scope and you can only have one OPERLOG log stream per sysplex. This means that if you make OPERLOG a DASD-only log stream, only one system can access it. See the system logger topic of z/OS MVS Setting Up a Sysplex for information on DASD-only log streams.

The messages are logged using message data blocks (MDB), which provide more data than is recorded in the SYSLOG. You can use the sample program IEAMDBLG, in SYS1.SAMPLIB, to convert OPERLOG records into SYSLOG format.

The operations log is operationally independent of the system log. An installation can choose to run with either or both of the logs. If you choose to use the operations log as a replacement for SYSLOG, you can prevent the future use of SYSLOG; once the operations log is started with the SYSLOG not active, enter the WRITELOG CLOSE command.

Although the operations log is sysplex in scope, the commands that control its status and the initialization parameter that activates it have a system scope, meaning that a failure in operations log processing on one system will not have any direct effect on the other systems in the sysplex. You can set up the operations log to receive records from an entire sysplex or from only a subset of the systems, depending on the needs of the installation.

Duplexing the OPERLOG logstream to coupling datasets (STG_DUPLEX = YES) increases the recoverability of OPERLOG data in the event of a coupling facility failure. However, it also increases overhead, slowing the servicing of OPERLOG synchronous write requests to the logstream.

During a message flood, the slower synchronous write performance associated with STG_DUPLEX = YES increases the likelihood of reaching the OPERLOG extended console QLIMIT, resulting in the disabling of the OPERLOG EMCS console and OPERLOG data loss.

While a coupling facility failure without staging datasets (STG_DUPLEX = NO) makes recovering the OPERLOG logstream more difficult, messages lost from the OPERLOG logstream will alternatively be available in SYSLOG, provided it is active as a hardcopy medium.

Installations running with both SYSLOG and OPERLOG as hardcopy media should consider the performance benefit of running without OPERLOG staging datasets (STG_DUPLEX = NO).

Initializing the Operations Log

Before you can begin using the operations log, you must define a log stream using the system logger services. Specify the name of the log stream as SYSPLEX.OPERLOG in either the data administrative utility or in the IXGINVNT macro. See z/OS MVS Setting Up a Sysplex for more information about preparing to use a log stream and on sizing the coupling facility structure for OPERLOG.

You must also verify that the operations log will contain the messages you need. Messages in the operations log will include the hardcopy message set, which you control. See The hardcopy message set for more information.

To activate the operations log manually, enter a VARY command.

Processing Operations Log Records

You might have your own programs for analyzing SYSLOG records in batch jobs. These programs will not work with the operations log because the records are in MDB format. You can convert your SYSLOG analysis programs to handle MDBs. The IEAMDBLG sample program, available in SYS1.SAMPLIB, is an example of a program that reads selected operations log records and converts them from MDB to SYSLOG format for analysis. Information contained in the MDB but not in a SYSLOG record, such as descriptor codes, are lost during this conversion.