Configuring Global Monitoring


Global Monitoring is a feature of Strobe that dynamically collects CPU utilization, elapsed time and SMF data. This chapter describes how to configure Strobe’s Global Monitoring feature. The following four types of Global Monitoring are available:

  • Batch: Dynamically collects CPU utilization and elapsed time data. Strobe measurements are automatically initiated if normal thresholds are exceeded by more than the associated threshold factor. This feature allows you to monitor jobs on an LPAR based on selection criteria you specify and parameters supplied in the Strobe PARMLIB member. A measurement will be initiated if CPU utilization or elapsed time exceeds the average for past executions. Global Monitoring is restricted to monitoring on individual LPARs. Monitoring is not done across a SYSPLEX.
  • CICS: Collects CPU and elapsed time for CICS transactions. This information is sent to iStrobe for viewing.
  • IMS: Collects CPU and elapsed time for IMS transactions. This information is sent to iStrobe for viewing
  • SMF data: Is collected by the Global Monitoring SMF exits and sent to iStrobe for viewing.

Global Monitoring Address Space (MNAS)

To provide isolation and for extensibility, Global Monitoring functionality has been removed from the Measurement Services Address Space (MSAS) and placed in its own address space, the Global Monitoring Address Space (MNAS). The MNAS is started by the MSAS if the GM_MONITOR=YES parameter is specified in the Strobe PARMLIB member. Ensure that the MNAS has an OMVS segment associated to the user ID used to start the MNAS.

Important

Unlike the MSAS and the SSA, the MNAS does not shut down when the Session Manager address space is shut down. In order to shut down the MNAS, issue the MVS STOP command specifying the job name of the MNAS.

See Strobe Global Monitoring Address Space (MNAS) Commands for a complete list of commands for managing the MNAS.

Memory Requirements

Global Monitoring data is stored in a 64-bit memory object allocated and managed by the Strobe Global Monitoring Address Space (MNAS). Depending on your selection criteria, the PARMLIB values you specify, and the number of jobs monitored, a large amount of memory could be required above the bar. BMC estimates that in order to monitor 200,000 job steps, approximately 2 GB of memory would be required above the bar. You may require the assistance of the z/OS systems programmer at your site to increase any limitations on the amount of storage allocated above the bar.

Repository Data sets

The Global Monitoring repository files are VSAM data sets containing Global Monitoring data. The purpose of the repository files is to provide historical data used to initialize the monitoring data memory object during Global Monitoring startup. The source of this data is the monitoring data memory object. The information from the memory object is written to the repository data sets on a 15-minute interval while Global Monitoring is active. The data sets are completely rewritten at each interval, but are written only if there has been monitoring activity. A set of two repository data sets must exist for each z/OS image on which Strobe will execute. When data is successfully written to one file, the other file becomes current and monitoring data will be written to it.

The VSAM ESDS repository data set is specified by the GM_REPOSITORY_DSN parameter of the PARMLIB member. This prefix is appended with the letter S, the SMF SYSID of the system on which the MNAS is running, and F1 or F2 for the first and second repository data sets, respectively. For example, with a GM_REPOSITORY_DSN parameter of STROBE.GM.REPOSTRY, and an SMF SYSID of SYSP, the generated data set names are:

  • STROBE.GM.REPOSTRY.SSYSP.F1
  • STROBE.GM.REPOSTRY.SSYSP.F2

Criteria Data set

The criteria data set is a VSAM KSDS containing the selection criteria for Global Monitoring processing. The criteria load utility (GMLOAD) allows you to specify the system ID, the job name, the step name, and the procedure step name of job steps to monitor. Use of wild cards is permitted to allow for flexibility in specifying which jobs to monitor. In Strobe, you may also specify THRESH_CPU and THRESH_ELAPS for each Batch entry, which will override the GM_CPU_THRESH and GM_ELAPSE_THRESH parameters specified in the Strobe PARMLIB member.

Warning

The format of the criteria data set is updated for Release 21.01. If you are migrating from a Global Monitoring release that is 18.02 or earlier to release 21.01, you must modify and submit the SSTRSAMP library member GMMGRT migration job. Global Monitoring will not start up if the previous release(s) of the criteria file are used.

Strobe Global Monitoring Configuration

Important

The following roles are required for configuring Global Monitoring:

  • z/OS system programmer
  •  administrator

Complete the following tasks to configure Global Monitoring.

Task 6.1: Review Global Monitoring Planning Considerations

  1. Global Monitoring requires specific TYPE and EXITS to be defined in SYS1.PARMLIB(SMFPRMxx).
    • TYPE: Should contain 30, 70, 100, and 113 depending on what was specified for parameter GM_SMFREC=(30,70,100,113).
    • EXITS: If there are no SUBSYS coded, IEFUSI, IEFACTRT, IEFU83, and IEFU84 all need to be on the SYS EXITS.
  2. If there are SUBSYS coded for STC, JES2, or JES3, each must have an EXITS with IEFUSI, IEFACTRT, IEFU83, and IEFU84.
  3. Any SUBSYS not coded pick up EXITS from SYS.
  4. If you specify YES for parameters GM_BATCH, GM_CICS, or GM_IMS on here, IEFUSI and IEFACTRT are required.
  5. If you specify YES for parameters GM_SMFDATA=YES or GM_SMFREC=(30,70,100,113), IEFU83 and IEFU84 are required.
  6. See Managing the Global Monitoring Environment - SMF for information about the commands for managing the EXITS.

Task 6.2: Review Global Monitoring Parameters

The Global Monitoring parameters are included in the Strobe PARMLIB member. See Global-Monitoring-Parameters for the complete list of Global Monitoring parameters, their default settings, and their descriptions.

Task 6.3: Allocate and Initialize the Global Monitoring Data sets

Two repository data sets and one criteria data set must be created for each z/OS image on which Strobe will execute. Initialize each Global Monitoring repository data set as follows:

  1. Change the default values for data set names in job steps DEFREPOS, INIREPF1, INIREPF2, and INICRIT of hlq.SSTRSAMP member GMALLOC. STROBE.GMRPSTRY.SXXX.F1 and STROBE.GMRPSTRY.SXXX.F2 refer to the names of your Global Monitoring repository data sets. These data set names are based on the value specified for the GM_REPOSITORY_DSN parameter in the Strobe PARMLIB member, appended with Sxxxx.F1 and Sxxxx.F2, where xxxx is the SMF system ID of the z/OS image (see GM_REPOSITORY_DSN=).
    STROBE.STRGMCRI refers to the name of your Global Monitoring criteria data set. This data set name is the value specified for the GM_CRITERIA_DSN parameter in the Strobe PARMLIB member (see GM_CRITERIA_DSN=).
  2. Submit the job in member GMALLOC. All return codes should be zero.
  3. Verify that the repository and criteria data sets were created and initialized.

Task 6.4: Specify Global Monitoring Selection Criteria

The hlq.SSTRSAMP member GMLOAD job is run to create or modify the criteria that determines the Global Monitor selections. Edit and customize sample job GMLOAD according to the comments in the job. Valid characters for all fields are A-Z, 0-9, and the special symbols $, *, #, and @.

The GMLOAD control statements are in the following format. Each Global Monitor request begins with REQUEST= and terminates with an END statement. Global Monitor commands begin in column 1. For ADD, DEL, and UPD commands all entries are required. The DEL command requires all the fields to match the entry to be deleted.

REQUEST=Begins a Global Monitor operation against the criteria data set.

ADD — Adds the request to the criteria data set.

DEL — Deletes the matching request from the criteria dat aset.

UPD — Updates the matching request from the criteria data set.

LIS — Lists the contents of the criteria data set.

ENTRY_TYPE=Request type.

INCLUDE — The following Global Monitor request is to include activity that matches the following criteria.

EXCLUDE — The following Global Monitor request is to exclude activity that matches the following criteria.

PROGRAM — The following Global Monitor request is to exclude the activity of programs that match the following criteria.

SYSID=SMF ID of system to be monitored or excluded for this request.

* — All systems are monitored.

SYS* — SMF System IDs matching this prefix are monitored.

System — Only the SMF ID matching this is monitored.

JOBNAME=Name of job that will be monitored or excluded by this request. A single asterisk (*) is not valid for this field.

JOB— Prefix of job name that must match to wild card to be monitored by this request.

Job name — name of job to be monitored for activity.

STEPNAME=Name of JCL step that will be monitored or excluded by this request.

* — All steps are monitored for activity

PROC* — Prefix of JCL procedure name that must match to wild card to be monitored by this request.

name — name of JCL procedure that must match to be monitored by this request.

PROCSTEP=Name of procedure in STEPNAME that will be monitored or excluded by this request.

* — All procedures in STEPNAME are monitored for activity

PROC* — Prefix of procedure in STEPNAME that must match to wild card to be monitored by this request.

name — name of procedure in STEPNAME that must match to be monitored by this request.

JOB_TYPE=Application subsystem type that will be monitored or excluded by this request.

BATCH — Monitor if a started task or batch application.

CICS — Monitor if CICS job.

IMS — Monitor if IMS application.

PROGRAM=Name of application program that matches for this activity to be monitored or excluded.

* — All programs are monitored for activity

PROG* — Prefix of program name that must match to wild card to be monitored by this request.

name — name of program that must match to be monitored by this request.

Parameter PROGRAM= is mutually exclusive with parameters JOBNAME, STEPNAME, PROCSTEP, and JOB_TYPE.

THRESH_CPU=The percentage of CPU activity that must be exceeded over the repository CPU baseline for this request.

If the percentage is exceeded, a Strobe measurement is started. This option is valid only for JOB_TYPE=BATCH requests. Allowable values are the range 0-100 or spaces.

THRESH_ELAPS=The percentage of elapsed time that must be exceeded over the repository CPU baseline for this request.

If the percentage is exceeded, a Strobe measurement is started. This option is valid only for JOB_TYPE=BATCH requests. Allowable values are the range 0-100 or spaces.

END Signals the end of the request that begins with the Request=.

Batch Add Active/Queued Requests

Batch Add Active and/or Queued requests can be performed outside of ISPF and iStrobe by executing an ISPF Edit macro, STRBIT, or by modifying Strobe procedures STRBADD and STRBADD1.

  • STRBIT can be found in the hlq.SSTRSAMP library. This edit macro for JCL will build a list of job steps in the JCL job stream which the user can select to measure using Strobe. Once the job step(s) are selected, a measurement request is added for the job step(s) which includes an auto profile and then submits the job. Refer to the comments in STRBIT for the Strobe required parameters to invoke the measurement request.
    After the job has run and the step(s) have been measured, if an email address is supplied, a link to the profile is then sent via email. To use STRBIT, copy this member to a data set in your ISPF SYSPROC concatenation. From within a JCL member, enter the command STRBIT to invoke the macro.
  • Members STRBADD and STRBADD1 are in the hlq.SSTRPROC library created during Strobe installation. Refer to the usage instructions and customization requirements in the PROCs. You can modify STRBADD and STRBADD1 to be jobs.
    STRBADD: A PROC that allows one Strobe ADD request via the JOB PARM. Options available via the PARM, comma separated in order, are shown in the following table.
    Strobe STRBADD PROC Parameters

    Parameter

    Default

    Size

    Brief Description

    JOBNAME


    8

    Required

    ENVIRONMENT

    B

    1

    B for Production or T for Test

    TYPE

    A

    1

    A for Active or Q for Queued

    STEPNAME

    *ALL

    8 (17)

    PROCSTEP.STEPNAME allowed

    PROGRAM


    8

    Name of the program to measure

    EMAIL


    70

    Email to which a notification is sent when iStrobe profile is ready to download if iStrobe profile transfer is configured

    STRBADD1: A PROC that allows multiple Strobe ADD requests via the SYSIN DD. Some SYSIN options have defaults while others will be taken from the Strobe PARMLIB member if not supplied. The following table shows the SYSIN options and corresponding parameter in the PARMLIB member if applicable.
    Strobe STRBADD1 PROC Parameters

    Parameter

    Default/PARMLIB Member Parameter

    Size

    Brief Description

    TYPE


    6

    Required: Active or Queued

    ENVIRONMENT

    PROD

    4

    PROD or TEST

    JOBNAME


    8

    Required: Name of job that Strobe is to measure

    STEPNAME

    *ALL

    8

    Step to measure

    PROCSTEP


    8

    Procedure to measure in STEPNAME

    PROGRAM


    8

    Program name to measure

    DURATION

    GM_GOMIN

    4

    Length of expected runtime of measurement in minutes. Used to determine sampling rate

    SAMPLES

    10000

    5

    Number of samples to take for measurement

    SDSNAME


    44

    Prefix to assign to the output sample data set name

    LOADLIB

    UI_STRBLOAD

    44

    Data set name of load library

    N0TIFY

    GM_NOTIFY

    8

    TSO user ID notified when job is done

    EMAIL

    GM_EMAIL

    70

    Email to which a notification is sent when iStrobe profile is ready to download if iStrobe profile transfer is configured

    LOCATION


    55

    For Strobe 5.3 and more current, sets the tag on the iStrobe profile.

    PROFILENAME

    GM_PROFNAM

    12

    Name of the iStrobe profile generated

    OVERWRITE

    GM_PROFOVWRT

    3

    YES or NO, indicating whether to overwrite the previous iStrobe profile

    CODEPAGE

    UI_ICODEPAG

    8

    Code page Strobe is to use when converting iStrobe profile from EBCDIC to ASCII

    HOST

    GM_ISTRHOST

    40

    Host name or IP address used for iStrobe

    PORT

    GM_ISTRPORT

    5

    Port number used for iStrobe

    JOBCARD

    GM_JC1 - GM_JC4

    4 x 80

    Job card for the profile transfer to iStrobe

    FOLDER


    16

    Destination folder for the iStrobe profile

    STRBADD and STRBADD1 will use the following Strobe Global Monitoring parameters:

    • GM_SQLAF_EXPLAIN
    • GM_SQLAF_STATISTICS
    • GM_SQLAF_TRANSLATION
    • GM_SQLAF_OBSERVATIONS
    • GM_SQLAF_STMTCNT
    • GM_SQLAF_AUTHID
    • GM_THRESH_ACTION
    • GM_SHRDIR_DSN

For an explanation of these parameters see, Global-Monitoring-Parameters.

Maintaining Two Releases of Global Monitoring

In addition to the steps described below that are required for maintaining two releases of Global Monitoring, you must also maintain two releases of Strobe proper. See Maintaining Two Strobe Releases for information about maintaining two versions of Strobe.

Complete the following procedure to enable a new test version of Global Monitoring:

  1. Create a separate set of Repository and Criteria data sets for the new version.
  2. Specify the prefix for the Repository data sets specified on the GM_REPOSITORY_DSN parameter in the Strobe PARMLIB member.
  3. Specify the name of the Criteria data set in the Strobe PARMLIB member.
  4. Specify the name of the new MNAS startup JCL procedure on the MNASPROCNAME parameter in the Strobe PARMLIB member for the new version of Strobe.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*