Previous Topic: 9.2.2 Account Post-Processing

Next Topic: 9.2.4 VM Monitor Post-Processing

9.2.3 Input Raw VM Monitor Data


VM Monitor data comes from two sources: IBM's MONWRITE
utility and Velocity Software's ESAWRITE utility.  VM Monitor
data is input from data sets defined by INPUTVMC.  These data
sets contain variable length records (up to 8188-bytes in
length).

CONFIGURATION RECORDS

VM Monitor files contain a set of configuration records
(Domain 1) generated when VM Monitor is started.  These
records provide static data for the system, such as processor
and device configuration data, base measurement data, and the
time the monitor was started.  This information is critical
for building the files in the VMX information area and
maintaining data integrity for all VM Monitor base files.  If
a Monitor input file is read and the input data does not
begin with the following Domain 1 configuration records, the
DAY080 processing step will abend U997 with either
VMC00063E, VMC00067E, VMC00069E, or VMC00300E warning
messages displaying in the MICSLOG.

  Domain/        Description
  Record

  01/01          Event Profile
  01/04          System Configuration
  01/05          Processor COnfiguration
  01/09          Monitor Sample

If may be possible that other Domain 1 records such as the
1/14 Domain Detail monitor records may be present at the
beginning of the input data. As long as the above mentioned
records are in the first set or group of Domain 1 records,
processing of the data should continue.

See Section 6.2.6, Configuration Record Requirements, for
more information on configuration records. If the monitor
input data begins with a 01/12 Start of Suspend record, see
Section 6.2.4, Monitor Suspend Considerations and Handling.

See Appendix A for explanation of the above mentioned MICSLOG
messages and reasons why these configuration records may be
missing.

ORGSYSID, SYSID, CPUMODEL

The CA MICS ORGSYSID is assigned to the data based on the
input DDNAME, by association with the CPU serial number
specified in VMCOPS and read from the Domain 1, record 5
Record (Processor Configuration).  The parameter generation
process, VMCPGEN, creates the CA MICS variable GENSYSID that
is assigned to ORGSYSID. ORGSYSID is passed to BASE MACRO
%SYSID to create the CA MICS data elements CPUMODEL and
SYSID. See Section 7.2.1 for more information about VMCOPS.

TIMESTAMPS

For files that have one observation per input record, the end
timestamp is taken directly from the input data (the time of
day clock stamp contained in each monitor record header).
For other files, the end timestamp is taken from the record
with the highest timestamp that contributes to the
observation.

The Interval Timestamp (VMCINTTS) is taken from the first
Domain 1/11 record of the previous sample interval.

HOST SUBCHANNEL ID

The source data for the VMXDVSID data element is defined as
four bytes in most input records.  It is input as '+2
VMXDVSID PIB2.', because the first two bytes always contain
X'0001'.  Additionally, leaving '0001' as is would make the
element difficult to use.  When an I/O Instruction (SSCH,
RSCH, and so on)  is issued, '0001' is a requirement of the
hardware.

VMXCHC FILE

This file contains up to 256 observations per interval.  A
way to reduce this number has been provided.  An array
(CHPID) is maintained that contains the count of devices
attached to each channel.  Any CHPID without a device is
represented by a zero or missing value.  This array can be
tested in the USRSCHC user exit:

    SKIP_REC = (CHPID(CHCHPID+1) > 0);

This can also be done automatically by setting the MACRO
variable CHP_SEL to YES in USER.SOURCE(#VMCEXIT), in which
case we will bypass all output logic for the file when an
observation for an orphan CHPID is detected.  See Figure 9-5
for the logic flow in the Input VM Monitor Data in DAY080.
Part 1 of Figure 9-3 illustrates processing performed for
Domain 1 monitor configuration records at initialization.
Parts 2 through 4 of Figure 9-3 illustrate processing
peculiar to each Domain/Record type.



*------------------------* | INPUT | | HEADER | NOTES: |------------------------|yes *------------------------* *------------------------* | |--->| PROCESS | | OUTPUT | 1/11 TRACKING | IF MONITOR | | | | | | DOMAIN | | 1/1, 1/4, 1/5, 1/6, | | DCF ON 1/6 | The first 1/11 is seen at the end *------------------------* | 1/7, 1/8, 1/9, 1/14 | | ACF ON 1/8 | of the initialization data and |no | 1/15, 1/16, 1/17 |--->| VXF ON 1/15 | causes output of the SCF file. A | | | | SCX ON 1/16 | signal is set expecting the next | | (Configuration Data) | | SCF ON FIRST 1/11 | 1/11 to be the end of event data | | | | SGP ON NEXT 1/11 | indicator for the interval. | | 1/11 indicates end of | *------------------------* | | initialization data | * SEE NOTES | The next 1/11 may be either an end | *------------------------* | of event or end of sample data. |<-----------------------------------------------------------+ | When the end of event 1/11 record v is read, the expecting end of event ************************** signal is turned off. * USRSEL * ************************** When the first system domain record *------------------------* is seen, the end of event signal is | IF PROCESSING | turned off. This handles the cases | initialization data | of event and sample collection, | DISALLOW | event-only collection, and sample- | SKIPREC=1 | only collection. |------------------------|yes *--------------------* | IF 1/5 |---->| DETERMINE | When the end of sample 1/11 record | RECORD | | SYSID | is read, the ENDTS of the 1/11 *------------------------* |--------------------| record is used as the interval time- |no | OUTPUT | stamp (VMCINTTS). | | PCF | | *--------------------* | | SGP HANDLING | | |<-----------------------------+ Several input records are combined | to create a single observation in v the VMXSGP file. Each SGP *------------------------* *--------------------* observation is held in a pending | IF NOT |yes | CHECK DATE | state until a signal occurs to | INITIAL |--->| TIMESTAMP | write the observation. This | PROCESSING | | ROUTINE | pending condition is noted when *------------------------* *--------------------* SGP_PND=1. The determination of |no | whether or not to write an SGP | | observation is made when a 1/11 |<----------------------------+ record is read at the end of the | interval, when new initialization v data is read, and when all input is *------------------------* complete. | OUTPUT | *------------------------*


Figure 9-3a. Input VM Monitor Data (Part 1 of 4)


SYSTEM DOMAIN PROCESSING MONITOR DOMAIN PROCESSING +---------------+-----------+----------------+ +---------------+-----------+----------------+ | INPUT RECORD | USER EXIT | OUTPUT FILE | | INPUT RECORD | USER EXIT | OUTPUT FILE | +---------------+-----------+----------------+ +---------------+-----------+----------------+ | 0/1 | USRSSPP | VMXSP001 | | 1/6 | USRSDCF | VMXDCF00 | |---------------|-----------|----------------| |---------------|-----------|----------------| | 0/2 | USRSSPP | VMXSP002 | | 1/8 | USRSACF | VMXACF00 | |---------------|-----------|----------------| |---------------|-----------|----------------| | 0/4 | USRSSPP | VMXSP004 | | 1/15 | USRSVXF | VMXVXF00 | |---------------|-----------|----------------| |---------------|-----------|----------------| | 0/5 | USRSSPP | VMXSP005 | | 1/16 | USRSSCX | VMXSCX00 | |---------------|-----------|----------------| |---------------|-----------|----------------| | 0/11 | USRSSPP | VMXSP011 | | 1/1, 1/4, 1/5 | USRSSCF | VMXSCF00 | |--------------------------------------------| | 1/7, 1/9, 1/17| | | | 0/13 | USRSSPP | VMXSP013 | | -----------| | |--------------------------------------------| | * held until 1/11 | | | 0/9 | USRSCHC | VMXCHC09 | |--------------------------- | |--------------------------------------------| | * 1 observation per monitor start | | 0/18 | USRSCHC | VMXCHC18 | | | |---------------------------- | | | | * 1 observation per CHPID | |--------------------------------------------| |--------------------------------------------| | 1/12, 1/3 | USRSVXC | VMCVXX00 | | 0/15, 0/16, | USRSLCP | VMXLCP00 | | ----------------------------| | 0/17 | | | | * 1/12 held for 1/3 | | -----------| | |--------------------------------------------| | * 0/15 is held for 0/16 | | | 1/2, 1/10 | USRSVXC | VMCVXX00 | | and 0/17 | | |---------------|-----------|----------------| |--------------------------- | | 1/11 | USRSVXC | VMCVXX00 | | * 1 observation per logical CPU | | ----------------------------| |--------------------------------------------| | * if cols 13-14 contains EP or SP | | 0/15, 0/16, | USRSLPR | VMXLPR00 | +--------------------------------------------+ | 0/17 | | | | -----------| | | * 0/15 is held for 0/16 | | | and 0/17 | | |--------------------------- | | * 1 observation per logical partition | |--------------------------------------------| | 0/3, 0/6, 0/7 | USRSSGP | VMXSGP00 | | 0/8, 0/9, 0/10| | | | 0/12, 0/14, | | | | 0/19 -----------| | | * held until 1/11 | | |--------------------------- | | * 1 observation per sample interval | +--------------------------------------------+


Figure 9-3b. Input VM Monitor Data (Part 2 of 4)


SCHEDULER DOMAIN PROCESSING USER DOMAIN PROCESSING +---------------+-----------+----------------+ +--------------------------------------------+ | INPUT RECORD | USER EXIT | OUTPUT FILE | | INPUT RECORD | USER EXIT | OUTPUT FILE | +---------------+-----------+----------------+ +--------------------------------------------+ | 2/7 | USRSSCX | VMXSCX00 | | 4/1, 4/2, 4/5 | USRSVXF | VMXVXF00 | |---------------|-----------|----------------| | 4/6, 4/7 | | | | 2/8 | USRSSTP | VMXSTP00 | |---------------|-----------|----------------| +--------------------------------------------+ | 4/3 | USRSVXU | VMXVXU00 | |---------------|-----------|----------------| | 4/2 | USRSVXU | VMXVXULF | STORAGE DOMAIN PROCESSING | ----------------------------| +---------------+-----------+----------------+ | | | INPUT RECORD | USER EXIT | OUTPUT FILE | |--------------------------------------------| +---------------+-----------+----------------+ | 4/4 | USRSVXT | VMXVXT00 | | 3/1, 3/9, 3/10| USRSSGP | VMXSGP00 | |---------------|-----------|----------------| | -----------| | | 4/9 | USRS_VU | VMX_VU00 | | * held until 1/11 | | |---------------|-----------|----------------| |--------------------------- | | 4/8, 4/10 | USRS_VT | VMX_VT00 | | * 1 observation per sample interval | | ----------------------------| +--------------------------------------------+ | * 4/8 is held for 4/10 | | 3/2 | USRSSPP | VMXSP302 | +--------------------------------------------+ |---------------|-----------|----------------| | 3/3 | USRSXSS | VMXXSS00 | |---------------|-----------|----------------| | 3/3 | USRSXSF | VMXXSFT1 | |---------------|-----------|----------------| | 3/4 | USRSCPV | VMXCPV00 | |---------------|-----------|----------------| | 3/5, 3/6 | USRSXSF | VMXXSF00 | |---------------|-----------|----------------| | 3/7 | USRSACF | VMXACF00 | |---------------|-----------|----------------| | 3/8 | USRSBPG | VMXBPG00 | |---------------|-----------|----------------| | 3/10 | USRSVXU | VMXVXUT1 | +--------------------------------------------+


Figure 9-3c. Input VM Monitor Data (Part 3 of 4)


PROCESSOR DOMAIN PROCESSING I/O DOMAIN PROCESSING +---------------+-----------+----------------+ +---------------+-----------+----------------+ | INPUT RECORD | USER EXIT | OUTPUT FILE | | INPUT RECORD | USER EXIT | OUTPUT FILE | +---------------+-----------+----------------+ +---------------+-----------+----------------+ | 5/1, 5/2, 5/4 | USRSPCF | VMXPCF00 | | 6/1, 6/2, 6/5 | USRSDCF | VMXDCF00 | | 5/5, 5/6, 5/7 | | | | 6/6, 6/7, 6/8 | | | |---------------|-----------|----------------| | 6/9 | | | | 5/3 | USRSSPP | VMXSP503 | |---------------|-----------|----------------| +--------------------------------------------+ | 6/3 | USRSXDV | VMXXDV00 | |---------------|-----------|----------------| | 6/4 | USRSCDI | VMXCDIT1 | +--------------------------------------------+ SEEK DOMAIN PROCESSING +---------------+-----------+----------------+ | INPUT RECORD | USER EXIT | OUTPUT FILE | +---------------+-----------+----------------+ | 7/1 | USRSXDS | VMXXDS00 | +--------------------------------------------+


Figure 9-3d. Input VM Monitor Data (Part 4 of 4)