Previous Topic: 6.2.3 Dropping Input Records

Next Topic: 6.2.5 Consolidated Monitor Input

6.2.4 Monitor Suspend Considerations and Handling


The VM Monitor may suspend when the event portion of the
monitor saved segment is full, or the IUCV path to the
receiving virtual machine running the application that
retrieves the data from the save segment is quiesced.  If
suspend occurs, the monitor input data could have incomplete
or missing sample configuration records required by the
DAY080 processing step.  Your monitor input data can contain
domain 1 record 12 Event Start of Record Suspend records and
domain 1 record 3 Suspension records at the beginning of your
monitor input file. A usual monitor input file should start
with a domain 1 record 1 Event Profile.

The monitor suspend records domain 1, records 12 and 3 can be
present anywhere in the input data.  There can be periods
(intervals or hours) of suspend records followed by other
domain records (that is, domains 2 - 8 and 10, if running
Velocity Software ESALPS, domain C), then periods of
configuration records followed by other domain records,
followed by more suspend records.

Monitor suspend records will be detected by the CA MICS
Analyzer Option for VM/CMS by displaying a MICSLOG warning
message VMC00314W in the DAY080 MICSLOG.  In addition, the
DAY080 processing step will most likely abend with a
"VMC00067E Configuration Record for Processor nn is Missing"
because the domain 1 record 5 is missing in the input data.
See Appendix A for more information on these messages.

To avoid interruption to the daily processing of the CA MICS
Analyzer Option for VM/CMS, user exit USRSEL can be coded to
drop monitor suspend records and skip to the first set of
domain 1, record 1, 4, 5, and 9 monitor records in the input
data.

Edit prefix.MICS.USER.SOURCE(#BASEXIT) and enter the
following code after the following statement, %INCLUDE
SOURCE(#BASEXIT);

  MACRO _USRSEL

   IF ROUTINE = 'DYVMCFMT' THEN DO;
     IF MRHDRDM EQ 1 THEN DO;
      IF MRHDRRC EQ 12 THEN SUSPEND = 1;
      IF MRHDRRC EQ 1 THEN SUSPEND = 0;
     END;
      IF SUSPEND EQ 1 THEN DO;
        SKIP_REC = 1;

    /* Optional Display info in the SASLOG to track
        back to problem system   */

        IF DDREC = 1 THEN PUT '**PROBLEM SYSTEM DATASET
            NAME: ' DSNAME=;
      END;
   END;

  %

  Note: This code sets a flag called SUSPEND.  We recommend
  that you use SUSPEND in your coding.  Flag SUSPEND is
  provided as a retained variable that determines when
  variable SKIP_REC should be set to drop records from your
  input data and skip to the next set of domain 1 records
  beginning with record 1.

After the DAY080 processing step completes, be sure to remove
the code added to prefix.MICS.USER.SOURCE(#BASEXIT).