Go to Home Page
Questions?
Call 1-800-572-5517
 
  Go to Home Page  
  See all products
  See price schedules
  See manuals, tutorials, articles
  Download a free 30-day trial
  See user testimonials
  About Pacific Systems Group
 
 
SMF Tools
  See SMF Record Layouts
  See Sample SMF Reports
  Learn How to Export SMF Data
  Download Free SMF Reporting Software (30 days)
 
One of the greatest SMF record parsing programming languages I've ever seen. Chief, Large Systems Services Branch, NIH
  Choose Spectrum Writer to add 4GL to your product
  Free 60-Page Book (PDF) - How to Make an SMF Report
Spectrum DCOLLECT Reporter - the 4GL DCOLLECT Report Writer.

Spectrum SMF Writer - the 4GL SMF Report Writer.

SMF Type 115 Record

This table shows the record layout for type 115 SMF records
(WebSphere MQ Performance Statistics (V6.0)).

List of other SMF record layouts available.
List of sample SMF reports.

Purpose: WebSphere MQ performance statistics are written as SMF type 115 records. Statistics records are produced periodically at a time interval specified by the STATIME parameter of the CSQ6SYSP system parameter module, or at the SMF global accounting interval if you specify zero for STATIME.

The information provided in the SMF records comes from the following components of WebSphere MQ:

  • Buffer manager Manages the buffer pools in virtual storage and the writing of pages to page sets as the buffer pools become full. Also manages the reading of pages from page sets.
  • Coupling Facility manager Manages the interface with the Coupling Facility.
  • Data manager Manages the links between messages and queues. It calls the buffer manager to process the pages with messages on them.
  • DB2 manager Manages the interface with the DB2 database that is used as the shared repository.
  • Lock manager Manages locks for WebSphere MQ for z/OS.
  • Log manager Manages the writing of log records, which are essential for maintaining the integrity of the system if there is a back out request, or for recovery, if there is a system or media failure.
  • Message manager Processes all WebSphere MQ API requests.
  • Storage manager Manages storage for WebSphere MQ for z/OS, for example, storage pool allocation, expansion, and deallocation.

WebSphere MQ statistics can be collected for two subtypes:
1 System information, for example, related to the logs and storage.
2 Information about number of messages, buffer and paging information. Queue-sharing group information related to the Coupling Facility and DB2.


It's easy to report on SMF 115 data! (Jump to sample reports)

SMF Spectrum Writer
We have a low-cost 4GL report writer especially for SMF files. It's called Spectrum SMF Writer.

Spectrum SMF Writer handles the difficult SMF record parsing for you automatically. You just specify which fields you want to see.

Spectrum SMF Writer also converts the arcane date and time fields and reformats them into an attractive report.

Plus, Spectrum SMF Writer can export SMF data as comma delimited files to use on your PC.
 
Try It FREE Now!

The Spectrum Writer definitions for the SMF type 115 record below are based on the description provided by IBM in its "MVS Systems Management Facilities (SMF)" manual and/or DSECTs mapped by its Assembler macros.

 

Spectrum SMF Writer
File Definition for Type 115 SMF Records
WebSphere MQ Performance Statistics (V6.0)

***********************************************************************
*          SPECTRUM SMF WRITER -- FILE DEFINITION STATEMENTS          *
* SMF TYPE 115 RECORD - "WEBSPHERE MQ PERFORMANCE STATISTICS (V6.0)"  *
***********************************************************************
OPTION: MISSOFFSET /* TREAT OFFSET ERRORS (99999) LIKE MISSING DATA */
OPTION: STCKADJ(0) /* NO GMT TO LOCAL CONVERSION - DURATIONS*/
*******************************************************************
*  SMF COMMON HEADER MAPPING MACRO FOR STATISTICS TYPE 100
*******************************************************************
*
FLD: SMF115LEN LEN(2) DISP(0)     /*SMF115 TOTAL LENGTH*/
FLD: SMF115SGD LEN(2) DISP(2)     /*RESERVED*/
FLD: SMF115FLG LEN(1) DISP(4)     /*SYSTEM INDICATOR*/
FLD: SMF115RTY LEN(1) TYPE(BIN) ACC(NO) DISP(5)
                              /*The SMF record type, for WebSphere MQ*/
*                          statistics records this is always
*                          115 (X'73'). 
FLD: SMF115TME LEN(4) TYPE(B-SECS) DISP(6) DEC(2)
                                  /*TIME SMF MOVED RECORD*/
FLD: SMF115DTE TYPE(P-CYYDDD) DISP(10)        /*DATE SMF MOVED RECORD*/
FLD: SMF115SID LEN(4) DISP(14)  /*z/OS subsystem ID. Defines the z/OS*/
*                          subsystem on which the records were
*                          collected. (EX: MV41)
FLD: SMF115SSI LEN(4) DISP(18)
                              /*WebSphere MQ subsystem ID. (EX: MQ07)*/
FLD: SMF115STF TYPE(HALF) DISP(22)/*RECORD SUBTYPE*/
FLD: SMF115RI LEN(3) DISP(24)     /*WebSphere MQ version. (EX: 600)*/
FLD: SMF115SEQ LEN(1) DISP(27)    /*RESERVED*/
FLD: SMF115SD LEN(1) DISP(28)     /*self defining section starts*/
*
***
***The following 18 fields are only included with subtype 2
FLD: SMF115_QMSTO LEN(4) TYPE(BIN) DISP(36)
                     /*Offset to QMST message manager record section.*/
FLD: SMF115_QMSTL TYPE(HALF) DISP(40)
                     /*Length of QMST message manager record section.*/
FLD: SMF115_QMSTN TYPE(HALF) DISP(42)
                    /*Number of QMST message manager record sections.*/
FLD: SMF115_QISTO LEN(4) TYPE(BIN) DISP(44)
                        /*Offset to QIST data manager record section.*/
FLD: SMF115_QISTL TYPE(HALF) DISP(48)
                        /*Length of QIST data manager record section.*/
FLD: SMF115_QISTN TYPE(HALF) DISP(50)
                       /*Number of QIST data manager record sections.*/
FLD: SMF115_QPSTO LEN(4) TYPE(BIN) DISP(52)
                      /*Offset to QPST buffer manager record section.*/
FLD: SMF115_QPSTL TYPE(HALF) DISP(56)
                      /*Length of QPST buffer manager record section.*/
FLD: SMF115_QPSTN TYPE(HALF) DISP(58)
                      /*Number of QPST buffer manager record sections*/
*                                one for each buffer pool. 
FLD: SMF115_QLSTO LEN(4) TYPE(BIN) DISP(60)
                        /*Offset to QLST lock manager record section.*/
FLD: SMF115_QLSTL TYPE(HALF) DISP(64)
                        /*Length of QLST lock manager record section.*/
FLD: SMF115_QLSTN TYPE(HALF) DISP(66)
                       /*Number of QLST lock manager record sections.*/
FLD: SMF115_Q5STO LEN(4) TYPE(BIN) DISP(68)
                         /*Offset to Q5ST DB2 manager record section.*/
FLD: SMF115_Q5STL TYPE(HALF) DISP(72)
                         /*Length of Q5ST DB2 manager record section.*/
FLD: SMF115_Q5STN TYPE(HALF) DISP(74)
                        /*Number of Q5ST DB2 manager record sections.*/
FLD: SMF115_QESTO LEN(4) TYPE(BIN) DISP(76)
                    /*Offset to QEST coupling manager record section.*/
FLD: SMF115_QESTL TYPE(HALF) DISP(80)
                    /*Length of QEST coupling manager record section.*/
FLD: SMF115_QESTN TYPE(HALF) DISP(82)
                   /*Number of QEST coupling manager record sections.*/
***
***The following 6 fields are only included with subtype 1
FLD: SMF115_QSSTO LEN(4) TYPE(BIN) DISP(100)
                     /*Offset to QSST storage manager record section.*/
FLD: SMF115_QSSTL TYPE(HALF) DISP(104)
                     /*Length of QSST storage manager record section.*/
FLD: SMF115_QSSTN TYPE(HALF) DISP(106)
                    /*Number of QSST storage manager record sections.*/
FLD: SMF115_QJSTO LEN(4) TYPE(BIN) DISP(116)
                         /*Offset to QJST log manager record section.*/
FLD: SMF115_QJSTL TYPE(HALF) DISP(120)
                         /*Length of QJST log manager record section.*/
FLD: SMF115_QJSTN TYPE(HALF) DISP(122)
                        /*Number of QJST log manager record sections.*/



***********************************************************************
**** QSST     DSECT ,            STORAGE MANAGER STATISTICS BLOCK
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QSST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 1
*                    AND SMF115_QSSTN > 0)
*           NORMALIZE(QSST, SMF115_QSSTN)
***********************************************************************
COMP: QSST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 1 AND SMF115_QSSTN > 0)
                    ASSIGN(SMF115_QSSTO)
        ELSE        ASSIGN(99999)
FLD: QSST     DISP(0) LEN(72) OFFSET(QSST_OFFSET)
                                  /*STORAGE MANAGER STATISTICS BLOCK*/
FLD: QSSTHEAD LEN(4) TYPE(BIN) DISP(0)         /*CONTROL BLOCK HEADER*/
FLD: QSSTID   LEN(2) DISP(0)      /*CONTROL BLOCK ID*/
FLD: QSSTLEN  TYPE(HALF) DISP(2)  /*LENGTH OF CONTROL BLOCK*/
FLD: QSSTDESC LEN(4) DISP(4)      /*EBCDIC EYE CATCHER*/
FLD: QSSTDATA LEN(4) TYPE(BIN) DISP(8)         /*STATISTICAL COUNTERS*/
FLD: QSSTGPLF LEN(4) TYPE(BIN) DISP(8)          /*FIXED POOLS CREATED*/
FLD: QSSTFPLF LEN(4) TYPE(BIN) DISP(12)     /*FIXED POOLS DEALLOCATED*/
FLD: QSSTFREF LEN(4) TYPE(BIN) DISP(16)   /*FIXED POOL SEGMENTS FREED*/
FLD: QSSTEXPF LEN(4) TYPE(BIN) DISP(20)
                                  /*FIXED POOL SEGMENTS EXPANDED*/
FLD: QSSTCONF LEN(4) TYPE(BIN) DISP(24)
                                  /*FIXED POOL SEGMENTS CONTRACTED*/
FLD: QSSTGPLV LEN(4) TYPE(BIN) DISP(28)      /*VARIABLE POOLS CREATED*/
FLD: QSSTFPLV LEN(4) TYPE(BIN) DISP(32)  /*VARIABLE POOLS DEALLOCATED*/
FLD: QSSTFREV LEN(4) TYPE(BIN) DISP(36)
                                  /*VARIABLE POOL SEGMENTS FREED*/
FLD: QSSTEXPV LEN(4) TYPE(BIN) DISP(40)
                                  /*VARIABLE POOL SEGMENTS EXPANDED*/
FLD: QSSTCONV LEN(4) TYPE(BIN) DISP(44)
                                  /*VARIABLE POOL SEGMENTS CONTRACTED*/
FLD: QSSTGETM LEN(4) TYPE(BIN) DISP(48)  /*GETMAIN ISSUED TO ALLOCATE*/
*                           STORAGE OTHER THAN FIXED AND
*                           VARIABLE BLOCKS
FLD: QSSTFREM LEN(4) TYPE(BIN) DISP(52)
                                  /*FREEMAIN ISSUED TO DEALLOCATE*/
*                           STORAGE OTHER THAN FIXED AND
*                           VARIABLE BLOCKS
FLD: QSSTRCNZ LEN(4) TYPE(BIN) DISP(56) /*NONZERO RETURN CODES ISSUED*/
*                           BY GETMAIN/FREEMAIN
FLD: QSSTCONT LEN(4) TYPE(BIN) DISP(60)
                           /*CONTRACTIONS ISSUED FOR SHORT ON STORAGE*/
FLD: QSSTCRIT LEN(4) TYPE(BIN) DISP(64)    /*SHORT ON STORAGE BIT SET*/
FLD: QSSTABND LEN(4) TYPE(BIN) DISP(68)
                           /*ABEND ISSUED BECAUSE OF SHORT ON STORAGE*/
FLD: QSSTEND  LEN(1) DISP(72)     /*END OF CONTROL BLOCK*/
COMP: QSSTIDEN = X'003C'          /*HEADER CONSTANT*/
COMP: QSSTEYEC = 'QSST'           /*EYE CATCHER CONSTANT*/
 


***********************************************************************
**** QJST     DSECT ,            Log Manager Statistics 
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QJST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 1
*                    AND SMF115_QJSTN > 0)
*           NORMALIZE(QJST, SMF115_QJSTN)
***********************************************************************
COMP: QJST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 1 AND SMF115_QJSTN > 0)
                    ASSIGN(SMF115_QJSTO)
        ELSE        ASSIGN(99999)
FLD: QJST     DISP(0) LEN(120) OFFSET(QJST_OFFSET)
                                  /*Log Manager Statistics*/
FLD: QJSTID   LEN(2) DISP(0)      /*CONTROL BLOCK ID X'0093'*/
FLD: QJSTLL   TYPE(HALF) DISP(2)  /*LENGTH OF BLOCK*/
FLD: QJSTEID  LEN(4) DISP(4)      /*EBCDIC EYECATCHER*/
FLD: QJSTWRW  LEN(4) TYPE(BIN) DISP(8)    /*WRITE REQUEST COUNT, WAIT*/
FLD: QJSTWRNW LEN(4) TYPE(BIN) DISP(12) /*WRITE REQUEST COUNT, NOWAIT*/
FLD: QJSTWRF  LEN(4) TYPE(BIN) DISP(16)  /*WRITE REQUEST COUNT, FORCE*/
FLD: QJSTWTB  LEN(4) TYPE(BIN) DISP(20)
                        /*WAIT COUNT DUE TO UNAVAILABLE ACTIVE BUFFER*/
FLD: QJSTRBUF LEN(4) TYPE(BIN) DISP(24)
                            /*LOG READS SATISFIED FROM OUTPUT BUFFERS*/
FLD: QJSTRACT LEN(4) TYPE(BIN) DISP(28)
                           /*READS SATISFIED FROM ACTIVE LOG DATA SET*/
FLD: QJSTRARH LEN(4) TYPE(BIN) DISP(32)
                          /*READS SATISFIED FROM ARCHIVE LOG DATA SET*/
FLD: QJSTTVC  LEN(4) TYPE(BIN) DISP(36)
                        /*NUMBER OF READ ACCESSES DELAYED DUE TO @D1C*/
*                           TAPE VOLUME CONTENTION
FLD: QJSTBSDS LEN(4) TYPE(BIN) DISP(40)  /*TOTAL BSDS ACCESS REQUESTS*/
FLD: QJSTBFFL LEN(4) TYPE(BIN) DISP(44)
                        /*ACTIVE LOG OUTPUT CONTROL INTERVALS CREATED*/
FLD: QJSTBFWR LEN(4) TYPE(BIN) DISP(48)
                         /*COUNT OF CALLS TO WRITE ACTIVE LOG BUFFERS*/
FLD: QJSTALR  LEN(4) TYPE(BIN) DISP(52)
                                  /*ARCHIVE LOG READ ALLOCATIONS*/
FLD: QJSTALW  LEN(4) TYPE(BIN) DISP(56)
                                  /*ARCHIVE LOG WRITE ALLOCATIONS*/
FLD: QJSTCIOF LEN(4) TYPE(BIN) DISP(60)  /*COUNT OF CONTROL INTERVALS*/
FLD: QJSTLLCP LEN(4) TYPE(BIN) DISP(64) /*COUNT OF CHECKPOINTS ISSUED*/
FLD: QJSTWUR  LEN(4) TYPE(BIN) DISP(68)
                             /*NUMBER OF READ ACCESSES DELAYED DUE TO*/
*                           UNAVAILABLE RESOURCE
FLD: QJSTLAMA LEN(4) TYPE(BIN) DISP(72)
                            /*NUMBER OF LOOK AHEAD TAPE VOLUME MOUNTS*/
*                           ATTEMPTED.  THIS FIELD ALONG WITH FIELD
*                           QJSTLAMS, WILL SHOW HOW MANY TIMES LOOK-
*                           AHEAD MOUNTING FAILED, THUS NEGATING
*                           POTENTIAL SIGNIFICANT PERFORMANCE GAINS.
FLD: QJSTLAMS LEN(4) TYPE(BIN) DISP(76)
                            /*NUMBER OF LOOK AHEAD TAPE VOLUME MOUNTS*/
*                           PERFORMED.
FLD: QJSTLSUS LEN(4) TYPE(BIN) DISP(80)
                          /*NUMBER OF TIMES A LOG REQUEST RESULTED IN*/
*                           A SUSPEND FOR A LOG WRITE TO OCCUR.
FLD: QJSTLOGW LEN(4) TYPE(BIN) DISP(84)
                            /*TOTAL NUMBER OF LOG WRITE I/O REQUESTS.*/
FLD: QJSTCIWR LEN(4) TYPE(BIN) DISP(88)
                                  /*TOTAL NUMBER OF LOG CI S WRITTEN.*/
FLD: QJSTSERW LEN(4) TYPE(BIN) DISP(92)
                            /*NUMBER OF SERIAL LOG WRITE REQUESTS FOR*/
*                           CI RE-WRITES WHEN DUAL LOGGING.
FLD: QJSTTHRW LEN(4) TYPE(BIN) DISP(96)
                            /*NUMBER OF TIMES A LOG WRITE REQUEST WAS*/
*                           SCHEDULED BECAUSE THE LOG WRITE THRESHOLD
*                           WAS REACHED.
FLD: QJSTBPAG LEN(4) TYPE(BIN) DISP(100)
                          /*NUMBER OF TIMES A LOG WRITE BUFFER HAD TO*/
*                           BE PAGED-IN BEFORE IT COULD BE USED.
FLD: QJSTEND  LEN(4) TYPE(BIN) DISP(120)



***********************************************************************
**** QMST     DSECT ,                   Message Manager Statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QMST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QMSTN > 0)
*           NORMALIZE(QMST, SMF115_QMSTN)
***********************************************************************
COMP: QMST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QMSTN > 0)
                    ASSIGN(SMF115_QMSTO)
        ELSE        ASSIGN(99999)
FLD: QMST     DISP(0) LEN(48) OFFSET(QMST_OFFSET)
                                  /*Message Manager Statistics*/
FLD: QMSTID   LEN(2) DISP(0)      /*Control block identifier*/
COMP: QMSTIDV = X'D40F'           /*Control block identifier value*/
FLD: QMSTLL   LEN(2) TYPE(BIN) DISP(2)         /*length of QMST block*/
FLD: QMSTEYEC LEN(4) DISP(4)      /*eyecatcher*/
FLD: QMSTOPEN LEN(4) TYPE(BIN) DISP(8)         /*# of MQOPEN requests*/
FLD: QMSTCLOS LEN(4) TYPE(BIN) DISP(12)       /*# of MQCLOSE requests*/
FLD: QMSTGET  LEN(4) TYPE(BIN) DISP(16)         /*# of MQGET requests*/
FLD: QMSTPUT  LEN(4) TYPE(BIN) DISP(20)         /*# of MQPUT requests*/
FLD: QMSTPUT1 LEN(4) TYPE(BIN) DISP(24)        /*# of MQPUT1 requests*/
FLD: QMSTINQ  LEN(4) TYPE(BIN) DISP(28)         /*# of MQINQ requests*/
FLD: QMSTINQL LEN(4) TYPE(BIN) DISP(32)                    /*Reserved*/
FLD: QMSTSET  LEN(4) TYPE(BIN) DISP(36)         /*# of MQSET requests*/
FLD: QMSTENDW LEN(4) TYPE(BIN) DISP(40)                    /*Reserved*/
FLD: QMSTCALH LEN(4) TYPE(BIN) DISP(44) /*# of Close All Handles reqs*/



***********************************************************************
**** QIST     DSECT ,                   Data Manager statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QIST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QISTN > 0)
*           NORMALIZE(QIST, SMF115_QISTN)
***********************************************************************
COMP: QIST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QISTN > 0)
                    ASSIGN(SMF115_QISTO)
        ELSE        ASSIGN(99999)
FLD: QIST     DISP(0) LEN(80) OFFSET(QIST_OFFSET)
                                  /*Data Manager statistics*/
FLD: QISTID   LEN(2) DISP(0)      /*Control block ID*/
COMP: QISTIDV = X'C90F'           /*Control block ID value*/
FLD: QISTLL   LEN(2) TYPE(BIN) DISP(2)      /*Length of control block*/
FLD: QISTEYEC LEN(4) DISP(4)      /*Control block eyecatcher*/
FLD: QISTMGET LEN(4) TYPE(BIN) DISP(8)    /*# of Message Get requests*/
FLD: QISTMPUT LEN(4) TYPE(BIN) DISP(12)   /*# of Message Put requests*/
FLD: QISTMBLR LEN(4) TYPE(BIN) DISP(16)
                                  /*# of Release Browse Lock requests*/
FLD: QISTDCRE LEN(4) TYPE(BIN) DISP(20) /*# of Object Create requests*/
FLD: QISTDPUT LEN(4) TYPE(BIN) DISP(24)    /*# of Object Put requests*/
FLD: QISTDDEL LEN(4) TYPE(BIN) DISP(28) /*# of Object Delete requests*/
FLD: QISTDGET LEN(4) TYPE(BIN) DISP(32)    /*# of Object Get requests*/
FLD: QISTDLOC LEN(4) TYPE(BIN) DISP(36) /*# of Object Locate requests*/
FLD: QISTMCNT LEN(4) TYPE(BIN) DISP(40) /*# of Message Count requests*/
FLD: QISTALST LEN(4) TYPE(BIN) DISP(44)
                                  /*# of Stgclass change requests*/
FLD: QISTLOMM LEN(4) TYPE(BIN) DISP(48)
                                  /*# of Lock Marked Msg requests*/
FLD: QISTDLMM LEN(4) TYPE(BIN) DISP(52)
                                  /*# of Delete Marked Msg requests*/
FLD: QISTENUM LEN(4) TYPE(BIN) DISP(56)
                                  /*# of Enumerate/select requests*/
FLD: QISTRAIO LEN(4) TYPE(BIN) DISP(60)  /*# of Read aheads doing I/O*/
FLD: QISTRABP LEN(4) TYPE(BIN) DISP(64)
                                  /*# of Read aheads from Buff Pool*/
FLD: QISTGETD LEN(4) TYPE(BIN) DISP(68)
                                  /*# of Gets that got msg off disk*/
FLD: QISTGETB LEN(4) TYPE(BIN) DISP(72)
                                  /*# of Gets that got msg from BP*/



***********************************************************************
**** QPST     DSECT ,                   Buffer Manager Pool statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QPST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QPSTN > 0)
*           NORMALIZE(QPST, SMF115_QPSTN)
***********************************************************************
COMP: QPST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QPSTN > 0)
                    ASSIGN(SMF115_QPSTO)
        ELSE        ASSIGN(99999)
FLD: QPST     DISP(0) LEN(104) OFFSET(QPST_OFFSET)
                                  /*Buffer Manager Pool statistics*/
FLD: QPSTID   LEN(2) DISP(0)      /*Control block ID*/
COMP: QPSTIDV = X'D70F'           /*Control block ID value*/
FLD: QPSTLL   LEN(2) TYPE(BIN) DISP(2)      /*Length of control block*/
FLD: QPSTEYEC LEN(4) DISP(4)      /*Control block eyecatcher*/
FLD: QPSTPOOL LEN(4) TYPE(BIN) DISP(8)           /*Buffer Pool Number*/
FLD: QPSTNBUF LEN(4) TYPE(BIN) DISP(12)        /*# of buffers in pool*/
FLD: QPSTCBSL LEN(4) TYPE(BIN) DISP(16)
                                  /*Lowest # of stealable buffers*/
FLD: QPSTCBS  LEN(4) TYPE(BIN) DISP(20)      /*# of stealable buffers*/
FLD: QPSTGETP LEN(4) TYPE(BIN) DISP(24)
                                  /*# of Get Page (old) requests*/
FLD: QPSTGETN LEN(4) TYPE(BIN) DISP(28)
                                  /*# of Get Page (new) requests*/
FLD: QPSTRIO  LEN(4) TYPE(BIN) DISP(32)   /*# of DASD read operations*/
FLD: QPSTSTW  LEN(4) TYPE(BIN) DISP(36)
                                  /*# of Set Write Intent requests*/
FLD: QPSTTPW  LEN(4) TYPE(BIN) DISP(40)  /*# of pages written to DASD*/
FLD: QPSTWIO  LEN(4) TYPE(BIN) DISP(44)  /*# of DASD write operations*/
FLD: QPSTIMW  LEN(4) TYPE(BIN) DISP(48)
                                  /*# of synchronous write operations*/
FLD: QPSTDWT  LEN(4) TYPE(BIN) DISP(52)
                              /*# of times deferred write threshold X*/
FLD: QPSTDMC  LEN(4) TYPE(BIN) DISP(56)
                                  /*# of times synchronous write X*/
FLD: QPSTSTL  LEN(4) TYPE(BIN) DISP(60)          /*# of buffer steals*/
FLD: QPSTSTLA LEN(4) TYPE(BIN) DISP(64)
                                  /*# of times hash chain modified X*/
FLD: QPSTSOS  LEN(4) TYPE(BIN) DISP(68)
                               /*# times suspended for no stealable X*/



***********************************************************************
**** QLST     DSECT ,                   Lock Manager statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QLST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QLSTN > 0)
*           NORMALIZE(QLST, SMF115_QLSTN)
***********************************************************************
COMP: QLST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QLSTN > 0)
                    ASSIGN(SMF115_QLSTO)
        ELSE        ASSIGN(99999)
FLD: QLST     DISP(0) LEN(32) OFFSET(QLST_OFFSET)
                                  /*Lock Manager statistics*/
FLD: QLSTID   LEN(2) DISP(0)      /*Control block id*/
COMP: QLSTIDV = X'D30F'           /*Control block ID value*/
FLD: QLSTLL   LEN(2) TYPE(BIN) DISP(2)         /*Control block length*/
FLD: QLSTEYEC LEN(4) DISP(4)      /*Eyecatcher*/
FLD: QLSTGETL LEN(4) TYPE(BIN) DISP(8)       /*# of GET LOCK requests*/
FLD: QLSTHLDL LEN(4) TYPE(BIN) DISP(12)
                                  /*# of times requested lock held*/
FLD: QLSTRELL LEN(4) TYPE(BIN) DISP(16)  /*# of RELEASE LOCK requests*/



***********************************************************************
**** Q5ST      DSECT ,                  DB2 Manager Statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF Q5ST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_Q5STN > 0)
*           NORMALIZE(Q5ST, SMF115_Q5STN)
***********************************************************************
COMP: Q5ST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_Q5STN > 0)
                    ASSIGN(SMF115_Q5STO)
        ELSE        ASSIGN(99999)
FLD: Q5ST     DISP(0) LEN(480) OFFSET(Q5ST_OFFSET)
                                  /*DB2 Manager Statistics*/
FLD: Q5STID   LEN(2) DISP(0)      /*Control block identifier*/
COMP: Q5STIDV = X'F50F'           /*Control block identifier value*/
FLD: Q5STLL   LEN(2) TYPE(BIN) DISP(2)         /*length of Q5ST block*/
FLD: Q5STEYEC LEN(4) DISP(4)      /*eyecatcher*/
*
FLD: NUMTASK  LEN(4) TYPE(BIN) DISP(8)            /*# of server tasks*/
FLD: ACTTASK  LEN(4) TYPE(BIN) DISP(12)    /*# of active server tasks*/
FLD: CONNCNT  LEN(4) TYPE(BIN) DISP(16)       /*# of connect requests*/
FLD: DISCCNT  LEN(4) TYPE(BIN) DISP(20)    /*# of disconnect requests*/
FLD: DHIGMAX  LEN(4) TYPE(BIN) DISP(24)    /*Max. request queue depth*/
FLD: ABNDCNT  LEN(4) TYPE(BIN) DISP(28)     /*# of DB2SRV task abends*/
FLD: REQUCNT  LEN(4) TYPE(BIN) DISP(32)       /*# of request requeues*/
FLD: DEADCNT  LEN(4) TYPE(BIN) DISP(36)      /*# of deadlock timeouts*/
*
FLD: DELECNT  LEN(4) TYPE(BIN) DISP(40)        /*# of delete requests*/
FLD: LISTCNT  LEN(4) TYPE(BIN) DISP(44)          /*# of list requests*/
FLD: READCNT  LEN(4) TYPE(BIN) DISP(48)          /*# of read requests*/
FLD: UPDTCNT  LEN(4) TYPE(BIN) DISP(52)        /*# of update requests*/
FLD: WRITCNT  LEN(4) TYPE(BIN) DISP(56)         /*# of write requests*/
FLD: SCSSEL   LEN(4) TYPE(BIN) DISP(60)
                                  /*SCST selects Shared Ch. status*/
FLD: SCSINS   LEN(4) TYPE(BIN) DISP(64)
                                  /*SCST inserts Shared Ch. status*/
FLD: SCSUPD   LEN(4) TYPE(BIN) DISP(68)
                                  /*SCST updates Shared Ch. status*/
FLD: SCSDEL   LEN(4) TYPE(BIN) DISP(72)
                                  /*SCST deletes Shared Ch. status*/
FLD: SSKSEL   LEN(4) TYPE(BIN) DISP(76)
                                  /*SSKT selects Shared sync. key*/
FLD: SSKINS   LEN(4) TYPE(BIN) DISP(80)
                                  /*SSKT inserts Shared sync. key*/
FLD: SSKDEL   LEN(4) TYPE(BIN) DISP(84)
                                  /*SSKT deletes Shared sync. key*/
FLD: SCSBFTS  LEN(4) TYPE(BIN) DISP(88)
                                  /*SCST # of times buffer too small*/
FLD: SCSMAXR  LEN(4) TYPE(BIN) DISP(92)  /*SCST maximum rows on query*/
FLD: DELETCUW TYPE(STCKTIME) DISP(104)
                                 /*Cumulative STCK diff Thread delete*/
FLD: DELETMXW TYPE(STCKTIME) DISP(112)
                                  /*Maximum STCK diff Thread delete*/
FLD: DELESCUW TYPE(STCKTIME) DISP(120)
                                  /*Cumulative STCK diff SQL delete*/
FLD: DELESMXW TYPE(STCKTIME) DISP(128) /*Maximum STCK diff SQL delete*/
FLD: LISTTCUW TYPE(STCKTIME) DISP(136)
                                  /*Cumulative STCK diff Thread list*/
FLD: LISTTMXW TYPE(STCKTIME) DISP(144)
                                  /*Maximum STCK diff Thread list*/
FLD: LISTSCUW TYPE(STCKTIME) DISP(152)
                                  /*Cumulative STCK diff SQL list*/
FLD: LISTSMXW TYPE(STCKTIME) DISP(160)   /*Maximum STCK diff SQL list*/
FLD: READTCUW TYPE(STCKTIME) DISP(168)
                                  /*Cumulative STCK diff Thread read*/
FLD: READTMXW TYPE(STCKTIME) DISP(176)
                                  /*Maximum STCK diff Thread read*/
FLD: READSCUW TYPE(STCKTIME) DISP(184)
                                  /*Cumulative STCK diff SQL read*/
FLD: READSMXW TYPE(STCKTIME) DISP(192)   /*Maximum STCK diff SQL read*/
FLD: UPDTTCUW TYPE(STCKTIME) DISP(200)
                                 /*Cumulative STCK diff Thread update*/
FLD: UPDTTMXW TYPE(STCKTIME) DISP(208)
                                  /*Maximum STCK diff Thread update*/
FLD: UPDTSCUW TYPE(STCKTIME) DISP(216)
                                  /*Cumulative STCK diff SQL update*/
FLD: UPDTSMXW TYPE(STCKTIME) DISP(224) /*Maximum STCK diff SQL update*/
FLD: WRITTCUW TYPE(STCKTIME) DISP(232)
                                  /*Cumulative STCK diff Thread write*/
FLD: WRITTMXW TYPE(STCKTIME) DISP(240)
                                  /*Maximum STCK diff Thread write*/
FLD: WRITSCUW TYPE(STCKTIME) DISP(248)
                                  /*Cumulative STCK diff SQL write*/
FLD: WRITSMXW TYPE(STCKTIME) DISP(256)  /*Maximum STCK diff SQL write*/
FLD: SCSSTCUW TYPE(STCKTIME) DISP(264)
                                 /*Cumulative STCK diff Thread select*/
FLD: SCSSTMXW TYPE(STCKTIME) DISP(272)
                                  /*Maximum STCK diff Thread select*/
FLD: SCSSSCUW TYPE(STCKTIME) DISP(280)
                                  /*Cumulative STCK diff SQL select*/
FLD: SCSSSMXW TYPE(STCKTIME) DISP(288) /*Maximum STCK diff SQL select*/
FLD: SCSITCUW TYPE(STCKTIME) DISP(296)
                                 /*Cumulative STCK diff Thread insert*/
FLD: SCSITMXW TYPE(STCKTIME) DISP(304)
                                  /*Maximum STCK diff Thread insert*/
FLD: SCSISCUW TYPE(STCKTIME) DISP(312)
                                  /*Cumulative STCK diff SQL insert*/
FLD: SCSISMXW TYPE(STCKTIME) DISP(320) /*Maximum STCK diff SQL insert*/
FLD: SCSUTCUW TYPE(STCKTIME) DISP(328)
                                 /*Cumulative STCK diff Thread update*/
FLD: SCSUTMXW TYPE(STCKTIME) DISP(336)
                                  /*Maximum STCK diff Thread update*/
FLD: SCSUSCUW TYPE(STCKTIME) DISP(344)
                                  /*Cumulative STCK diff SQL update*/
FLD: SCSUSMXW TYPE(STCKTIME) DISP(352) /*Maximum STCK diff SQL update*/
FLD: SCSDTCUW TYPE(STCKTIME) DISP(360)
                                 /*Cumulative STCK diff Thread delete*/
FLD: SCSDTMXW TYPE(STCKTIME) DISP(368)
                                  /*Maximum STCK diff Thread delete*/
FLD: SCSDSCUW TYPE(STCKTIME) DISP(376)
                                  /*Cumulative STCK diff SQL delete*/
FLD: SCSDSMXW TYPE(STCKTIME) DISP(384) /*Maximum STCK diff SQL delete*/
FLD: SSKSTCUW TYPE(STCKTIME) DISP(392)
                                 /*Cumulative STCK diff Thread select*/
FLD: SSKSTMXW TYPE(STCKTIME) DISP(400)
                                  /*Maximum STCK diff Thread select*/
FLD: SSKSSCUW TYPE(STCKTIME) DISP(408)
                                  /*Cumulative STCK diff SQL select*/
FLD: SSKSSMXW TYPE(STCKTIME) DISP(416) /*Maximum STCK diff SQL select*/
FLD: SSKITCUW TYPE(STCKTIME) DISP(424)
                                 /*Cumulative STCK diff Thread insert*/
FLD: SSKITMXW TYPE(STCKTIME) DISP(432)
                                  /*Maximum STCK diff Thread insert*/
FLD: SSKISCUW TYPE(STCKTIME) DISP(440)
                                  /*Cumulative STCK diff SQL insert*/
FLD: SSKISMXW TYPE(STCKTIME) DISP(448) /*Maximum STCK diff SQL insert*/
FLD: SSKDTCUW TYPE(STCKTIME) DISP(456)
                                 /*Cumulative STCK diff Thread delete*/
FLD: SSKDTMXW TYPE(STCKTIME) DISP(464)
                                  /*Maximum STCK diff Thread delete*/
FLD: SSKDSCUW TYPE(STCKTIME) DISP(472)
                                  /*Cumulative STCK diff SQL delete*/
FLD: SSKDSMXW TYPE(STCKTIME) DISP(480) /*Maximum STCK diff SQL delete*/



***********************************************************************
**** QEST     DSECT ,                   CF Manager Statistics
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QEST, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QESTN > 0)
*           NORMALIZE(QEST, SMF115_QESTN)
***********************************************************************
COMP: QEST_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QESTN > 0)
                    ASSIGN(SMF115_QESTO)
        ELSE        ASSIGN(99999)
FLD: QEST     DISP(0) LEN(4104) OFFSET(QEST_OFFSET)
                                  /*CF Manager Statistics*/
FLD: QESTID   LEN(2) DISP(0)      /*Control block identifier*/
COMP: QESTIDV = X'C513'           /*Control block identifier value*/
FLD: QESTLL   LEN(2) TYPE(BIN) DISP(2)         /*length of QEST block*/
FLD: QESTEYEC LEN(4) DISP(4)      /*eyecatcher*/
FLD: QESTZERO LEN(8) DISP(8)
FLD: QESTSTUC_ARRAY LEN(4096) DISP(8)
                              /*Array of 64 elements (each 64 in size*/

***********************************************************************
**** QESTSTUC DSECT ,                   Overlay the array
***********************************************************************

***********************************************************************
* TO REPORT ON ALL OCCURRENCES OF QESTSTUC, USE:
*    INPUT: SMF115
*           NORMWHEN(SMF115RTY = 115 AND SMF115STF = 2
*                    AND SMF115_QESTN > 0)
*           NORMALIZE(QESTSTUC, 64)
***********************************************************************
COMP: QESTSTUC_OFFSET =
        WHEN(SMF115RTY = 115 AND SMF115STF = 2 AND SMF115_QESTN > 0)
                    ASSIGN(SMF115_QESTO + 8)
        ELSE        ASSIGN(99999)
FLD: QESTSTUC DISP(0) LEN(64) OFFSET(QESTSTUC_OFFSET)
                                  /*Overlay the array*/
FLD: QESTSTR  LEN(12) DISP(0)     /*Structure name*/
FLD: QESTSTRN LEN(4) DISP(12)     /*Structure number*/
FLD: QESTCSEC LEN(4) TYPE(BIN) DISP(16)     /*Number of IXLLSTE calls*/
FLD: QESTCMEC LEN(4) TYPE(BIN) DISP(20)     /*Number of IXLLSTM calls*/
FLD: QESTSSTC LEN(8) DISP(24)     /*Time spent doing IXLLSTE Calls*/
FLD: QESTMSTC LEN(8) DISP(32)     /*Time spent doing IXLLSTM calls*/
FLD: QESTRSEC LEN(4) TYPE(BIN) DISP(40)  /*Number of IXLLSTE redrives*/
FLD: QESTRMEC LEN(4) TYPE(BIN) DISP(44)  /*Number of IXLLSTM redrives*/
FLD: QESTSFUL LEN(4) TYPE(BIN) DISP(48)   /*Number of structure fulls*/
FLD: QESTMNUS LEN(4) TYPE(BIN) DISP(52)
                                  /*Max number of entries in use*/
FLD: QESTMLUS LEN(4) TYPE(BIN) DISP(56)
                                  /*Max number of elements in use*/

FLD: SMF115_END LEN(1) OFFSET(0)

 


 

Sample Report from SMF 115 Subtype 2 Records
Showing Statistics on Buffer Pool Management


The sample SMF report below was created with
Spectrum SMF Writer, the low-cost 4GL SMF report writer.

In this report, we read the SMF file and select just the type 115 subtype 2 Websphere MQ performance statistics records. (See SMF 115 record layout.) We use all of the the multiply recurring QPST (Buffer Pool Management) sections from each SMF record to show statistics for each subpool during the period just ended.

The statistics include number of buffer pools, number of stealable buffers, lowest number of stealable buffers during the period, actual number of buffer steals, number of get page old and get page new requests, count of DASD read and write ops, pages written to DASD, etc.

All of this with just a few lines of code!
Why not install a Spectrum SMF Writer trial right now and start making your own SMF reports!

These Spectrum SMF Writer Statements:

INPUT:  SMF115
        NORMWHEN(SMF115RTY=115 AND SMF115STF=2 AND SMF115_QPSTN>0)
        NORMALIZE(QPST_SECTION, SMF115_QPSTN)

INCLUDEIF: SMF115RTY = 115 AND SMF115STF = 2

COLUMNS:                                                        
     SMF115SID('Z/OS|SUB|SYSTEM')        
     SMF115TME('PERIOD|ENDING' TPIC'Z9:99:99')                  
     QPSTPOOL('BUFFER|POOL|NUMBER' 6)                           
     QPSTNBUF('# OF|BUFFERS|IN POOL' 8)                         
     QPSTCBSL('LOWEST|# OF|STEALABLE|BUFFERS' 9)                
     QPSTCBS('# OF|STEALABLE|BUFFERS' 9)                        
     QPSTSTL('# OF|BUFFER|STEALS' 9)                            
     QPSTGETP('# OF|GET PAGE|(OLD)|REQUESTS' 11)                
     QPSTGETN('# OF|GET PAGE|(NEW)|REQUESTS' 11)                
     QPSTRIO('# OF|DASD|READ|OPS' 6)                            
     QPSTSTW('# OF|SET WRITE|INTENT|REQUESTS' 9)                
     QPSTTPW('# OF|PAGES|WRITTEN|TO DASD' 9)                    
     QPSTWIO('# OF|DASD|WRITE|OPS' 6)                           

TITLE: 'SMF 115 - WEBSPHERE MQ PERFORMANCE REPORT'
TITLE: 'BUFFER POOL MANAGER STATISTICS'

 

Produce This SMF Report:


                                           SMF 115 - WEBSPHERE MQ PERFORMANCE REPORT

                                                 BUFFER POOL MANAGER STATISTICS

                                  LOWEST                          # OF        # OF        # OF        # OF       # OF     # OF
  Z/OS           BUFFER   # OF     # OF      # OF      # OF     GET PAGE    GET PAGE      DASD      SET WRITE    PAGES    DASD
  SUB    PERIOD   POOL  BUFFERS  STEALABLE STEALABLE  BUFFER      (OLD)       (NEW)       READ       INTENT     WRITTEN  WRITE
 SYSTEM  ENDING  NUMBER IN POOL   BUFFERS   BUFFERS   STEALS    REQUESTS    REQUESTS       OPS      REQUESTS    TO DASD   OPS
 ______ ________ ______ ________ _________ _________ _________ ___________ ___________ ___________ ___________ _________ ______

  ZSA   11:00:07      0   50,000    49,618    49,943         0     833,658      26,025           0     736,158       386    112
  ZSA   11:00:07      1   20,000    17,424    18,457         0   1,318,813     507,094           0   1,016,252     2,518    689
  ZSA   11:00:07      2   50,000    49,990    49,993         0       2,962         528           0       2,962        14     14
  ZSA   11:00:07      3   20,000    19,830    19,885         0     198,242       5,373           0      56,514       144     41
  ZSA   11:00:07      4        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07      5        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07      6        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07      7        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07      8        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07      9        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     10        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     11        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     12        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     13        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     14        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:07     15        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      0   50,000    49,972    49,972         0          38           0           0          28         0      0
  ZSA   11:00:36      1   20,000    19,999    19,999         0           0           0           0           0         0      0
  ZSA   11:00:36      2   50,000    49,995    49,995         0           5           1           0           5         0      0
  ZSA   11:00:36      3   20,000    19,992    19,992         0          20           4           0          20         0      0
  ZSA   11:00:36      4        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      5        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      6        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      7        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      8        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36      9        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     10        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     11        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     12        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     13        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     14        0         0         0         0           0           0           0           0         0      0
  ZSA   11:00:36     15        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      0    7,000     6,945     6,947         0     944,557      20,985           0     888,051       102     36
  ZSC   11:24:43      1    5,000     4,997     4,997         0          12           0           0          12        12     12
  ZSC   11:24:43      2   80,000    21,100    26,499         0   1,143,307   1,222,176           0   1,781,528   107,246 26,832
  ZSC   11:24:43      3    5,000     4,871     4,917 3,699,704 226,849,650      22,659   3,698,301     179,207       230     66
  ZSC   11:24:43      4        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      5        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      6        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      7        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      8        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43      9        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     10        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     11        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     12        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     13        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     14        0         0         0         0           0           0           0           0         0      0
  ZSC   11:24:43     15        0         0         0         0           0           0           0           0         0      0
 
 *** GRAND TOTAL (    48 ITEMS)
                    360  377,000   314,733   321,596 3,699,704 231,291,264   1,804,845   3,698,301   4,660,737   110,652 27,802

See other sample SMF reports.

Copyright 2017.
Pacific Systems Group.
All rights reserved.
Home | Products | Prices | Documentation | 30-Day Trials | Customer Reviews | Company | FAQ | Sample Reports | SMF Records
Send Your Comments or Questions