First, there are no changes introduced on 19.0 regarding SMF records; the data contained on the SMF 230 records should be identical to previous releases.
Second, IDMS produces SMF records through the CA IDMS Performance Monitor (Perfmon). Perfmon must be licensed and activated in order to create SMF records in IDMS
All Perfmon AM (application monitor) and IM (Interval monitor) records will be written to SMF TYPE 230 records, if this specified in the #PMOPT macro :
#PMOPT , X
The SMF records are described in our Perfmon System Administrator Guide, Appendix C Appendix C: Performance Monitor Record Descriptions, section Format of SMF Records. An SMF record starts with an SMF header, #PMSMHDS, followed by a number of PMIM and/or PMAM records (which are described in their corresponding dsects like #PMINSDS, #PMARADS, #PMBUFDS etc). As such, a group of SMF records can contains a mixture of PM records. some of the statistics records written to SMF by Perfmon are split up in more than one record.
- the #PMARA - PMIM AREA WAIT RECORD
consists of two parts, identified by ARASEQ# field (values 1 and 2)
- the #PMTAS - PMAM TASK RECORD
consists of three parts, identified by TASSEQ# field (values 1, 2 and 3)
- the #PMINT - PMIM INTERVAL WAIT SUMMARY DATA
consists of three parts, identified by INTSEQ# field (values 1, 2 and 3)
In terms of the specific structure, the first line of an SMF 230 record has the fullword containing the RDW truncated and then an indicator for the opsys. The remainder of the first line would be a valid SMF header area.
The start of the second line does contain the first Perfmon record. First is a header of x'1C' in length. The first halfword is the length and the next byte is the record type. The following is a list of the possible types.
PMH$ARA EQU 1 ..PMIM AREA WAIT RECORD
PMH$BUF EQU 2 ..PMIM BUFFER WAIT RECORD
PMH$CDM EQU 3 ..PMIM CDMSLIB WAIT RECORD
PMH$INS EQU 4 ..PMIM INTERVAL STAT RECORD
PMH$INT EQU 5 ..PMIM INTERVAL WAIT RECORD
PMH$JRL EQU 6 ..PMIM JOURNAL WAIT RECORD
PMH$LNE EQU 7 ..PMIM LINE WAIT RECORD
PMH$PGM EQU 8 ..PMIM PROGRAM POOL WAIT RECORD
PMH$RUS EQU 9 ..PMIM RUNUNIT STAT RECORD
PMH$STG EQU 10 ..PMIM STORAGE POOL STAT RECORD
PMH$YPE EQU 11 ..PMIM STORAGE TYPE WAIT RECORD
PMH$DBG EQU 12 ..PMIM DBGROUP WAIT RECORD
PMH$XLK EQU 13 ..PMIM DSG XESLOCK WAIT RECORD
PMH$XLI EQU 14 ..PMIM DSG XESLIST WAIT RECORD
PMH$XMS EQU 15 ..PMIM DSG XCF MSG WAIT RECORD
PMH$TAS EQU 16 ..PMAM TASK INFORMATION RECORD
PMH$TAW EQU 17 ..PMAM TASK WAIT RECORD
PMH$DBK EQU 18 ..PMAM DBKEY WAIT RECORD
If you walk the record using the length field in the Perfmon record, it does successfully get you to the end of the SMF record.
You may also find some Perfmon records that have a type code of x'00' immediately after the Perfmon length. These are actually type 4 or type 30 records. If you look at offset x'05' from the beginning of the Perfmon length field you will see an x'04' for the record lengths of x'0103' and a x'1E' for the records with a length of x'2BA'. Type 4 & type 30 record are built within the structure of a user type 230 record.
Now, on to your specific question regarding zIIP statistics. Starting on IDMS 18.0, a new DC extended statistics section has been added to the statistics control blocks described by the #TSTDS, #STRDS and #TSBDS DSECTs. Statistics records written to the log and SMF by Perfmon contain this new extension. Specifically, the Perfmon report 30 contains zIIP data. So the SMF records for this specific Perfmon report should contain IDMS zIIP utilization data.
Since all of the data available in the SMF 230 records is based on the Perfmon data, the easiest way to see the details of what's available is to review the Perfmon reports.