Previous Topic: 9.1.1 Types of Data Processed

Next Topic: 9.1.1.2 CICS Statistics Data

9.1.1.1 CMF Data


The CICS Monitoring Facility (CMF) collects performance data
at the transaction level for later offline analysis.  The
records are type 110 records, which are in an SMF format.
The type 110 records that are processed into CA MICS are
those that have subtype 1 (Monitoring) and subtype 2
(Statistics).

For subtype 1 records, CA MICS elements are populated from
Performance records (Class 3) and optionally from Exception
records (Class 4).  Before the Performance records for a
particular CICS region can be processed, a special type 110
Data Dictionary record (subtype 1 class 1) must be input.
This record provides the information that is needed to decode
the Performance records for that region.

Each CMF data field has associated with it a unique numeric
value called a connector, which is used by CA MICS to locate
the entry in the data dictionary that describes the data
field.  This dictionary entry contains a field ID, a type,
and a length.  The type value indicates the format of the
data field, such as packed or character, and the length
indicates the number of bytes for the field.  CA MICS stores
the type and length of each field as elements in SAS arrays
and uses the unique field ID as the subscript for the arrays.

Data dictionary records are required only to decode the
Performance records, which are those of subtype 1 and Class 3
within this subtype.  No other type 110 records or records
from another data source such as ASG-TMON require Data
dictionary records.

Data sets containing CMF records are in a Variable Blocked
Spanned (VBS) format.


CICS Transaction Server 1.2 and Above

The CICS/TS release numbers are of the form 1.x, 2.x, and
3.x.   CICS/TS is often abbreviated as CTS.  In CICS TS
release 1.2 and higher, CMF produces three classes of data:
data dictionary (class 1), performance (class 3), and
exception (class 4).  In all classes of data, CMF records
contain a SMF header, a SMF product section, and one CICS
data section.  Depending on the class of data, the CICS data
section can contain a single dictionary or exception record,
or multiple transaction records.

o  SMF Header

   The SMF header contains the date and time when the record
   was written to SMF.  This timestamp is used by CA MICS for
   checkpoint processing.  The header also contains the
   record type and system identification.  For CMF, the
   record type is 110, subtype 1.

o  SMF Product Section

   The SMF product section identifies the CICS version
   number, CICS application ID as known to VTAM, and the
   class of data contained in the CICS data section that
   follows.

o  CICS Data Section

   There is only one CICS data section in a type 110, subtype
   1 record.  For the dictionary class, the section contains
   a single dictionary record that describes the format of
   the performance class transaction record.

   Note: There is no dictionary record for the exception
   class data.

   The figure below shows the format of a dictionary class
   record.

     +--------------------------------------+
     |   SMF    | SMF Product| Dictionary   |
     |  Header  |   Section  | Data Section |
     +--------------------------------------+

   For performance class, the section contains a string of
   field connectors, followed by multiple logical transaction
   records.  The field connectors identify the data fields
   that are present in each transaction record in the
   section, and are used by CA MICS to locate the entries in
   the dictionary record that describes the data fields.  For
   each logical record in the section, a separate observation
   is created in the CA MICS database. As a result, the
   number of observations in the CA MICS detail transaction
   file will not match the number of physical records read.
   The figure below illustrates the format of a performance
   class record.

     +--------------------------------------+
     |   SMF    | SMF Product| Performance  |
     |  Header  |   Section  | Data Section |
     +--------------------------------------+
                           /                  \
                       /                          \
                   /                                  \
               /                                          \
             +----------------------------------------------+
             | connectors | record 1 | record 2|   |record n|
             +----------------------------------------------+

   For exception class, the section contains a single record
   that is written when a CICS exception has occurred.  The
   figure below illustrates the format of an exception class
   record.

     +--------------------------------------+
     |   SMF    | SMF Product| Exception    |
     |  Header  |   Section  | Data Section |
     +--------------------------------------+


CICS 2.x

For CICS releases 2.x, CMF produces three classes of data:
accounting (class 2), performance (class 3), and exception
(class 4).  In all classes of data, CMF records contain a SMF
header, a product section, and one or more CICS data
sections.

o  SMF Header

   The SMF header contains the date and time when the record
   was written to SMF.  This timestamp is used by CA MICS for
   checkpoint processing.  The header also contains the
   record type and system identification.  For CMF, the
   record type is 110.

o  Product Section

   The product section identifies the CICS application ID as
   known to VTAM, and the class of data contained in
   subsequent CICS data sections.

o  CICS Data Section

   Except for the dictionary class data, each CMF record
   contains one or more CICS data sections, which are
   comprised of a section header, a section descriptor, a
   string of field connectors, and one or more data records.
   The figure below shows the format of a CMF performance,
   accounting, or exception class record.

     +------------------------------------+
     |   SMF    | Product  | CICS         |
     |  Header  | Section  | Data Section |
     +------------------------------------+
                         /                  \
                     /                          \
                 /                                 \
              /                                       \
           /                                             \
         +-------------------------------------------------+
         |Sect. |Sect.   |Field   |Data    |      |Data    |
         |Header|Descrptr|Connectr|record 1|      |record n|
         +-------------------------------------------------+

   The section header contains the class of data in this CICS
   section:  accounting, performance, or exception.  The
   section descriptor contains the type of data within the
   performance class:  dictionary, transaction, or global.
   The field connectors describe the data records that
   follow.  Each data record is a group of CICS data elements
   stored adjacently.  The connector values correspond one to
   one with the data elements in the data records.

   For the dictionary class data, the CICS data section
   contains one or more data dictionary records, each of
   which describes the format of the other classes of data.
   The figure below shows the format of a dictionary class
   record.

     +------------------------------------+
     |   SMF    | Product  | CICS         |
     |  Header  | Section  | Dict. Section|
     +------------------------------------+
                         /                  \
                     /                          \
                 /                                 \
              /                                       \
           /                                             \
         +-------------------------------------------------+
         |Sect. |Sect.   |Dict.   |Dict    |      |Dict    |
         |Header|Descrptr|record 1|record 2|      |record n|
         +-------------------------------------------------+

   DICTIONARY RECORD PROCESSING

   As mentioned earlier, the CA MICS Analyzer Option for CICS
   requires data dictionary records to process CMF data
   records.  This is true except when processing Performance
   class 3 records in CICS 3.1.1 and higher releases.  No
   data dictionary records are required to process Exception
   class 4 records.

   The CA MICS Analyzer Option for CICS processes a data
   dictionary record by reading the dictionary data entry
   associated with each data field and storing that
   information in arrays.

   The arrays contain field ID, type, and length for each
   data element.  Each array is identified by APPLID, CICSID,
   and CICS release number.  These arrays are discussed in
   more detail in Section 9.1.2, CMF Dictionary Processing.

   DATA RECORD PROCESSING

   The CA MICS Analyzer Option for CICS processes each data
   record by first reading the string of connectors that
   precedes the data.  It passes each connector to a special
   informat called $CICDEP, which uses the connector to
   locate the dictionary entry necessary for reading a
   subsequent data field.  Once the dictionary entry has been
   found, $CICDEP uses the type and length information from
   the dictionary to input the data field, and converts it to
   its proper format.  The CA MICS Analyzer Option for CICS
   processes each connector and its corresponding data field
   until all the connectors have been exhausted.  This
   process is repeated for each data record found in each
   CICS data section.  If a data dictionary cannot be located
   for a data record, the data record will be skipped.

   The use of the $CICDEP routine to process an entire data
   record in a given call greatly reduces the number of SAS
   INPUT calls that would normally have to be performed, thus
   greatly reducing SAS processing overhead.