Record for transaction profiling

Profiling provides an application perspective of the trace. To view data captured by ad hoc profiling, use primary menu option 2 Profiler on the C\Prof ISPF dialog.

Record for profiling using the ISPF dialog

Use the C\Prof ISPF dialog to generate JCL for ad hoc profiling. To do this, complete the following steps:

  1. On the C\Prof primary option menu, select option 4 Batch.

  2. On the Batch menu, select option 2 Profile.

  3. Enter the Job name and LPAR of the CICS region you want to record for transaction profiling.

  4. Press Enter to generate the JCL.

  5. Review the following configuration control statements generated by the dialog.

    • RECORD FOR PROFILING

      Set the collection mode to RECORD FOR PROFILING. This mode is used to perform ad hoc recording of data from the CICS internal trace to auxiliary trace data sets.

    • LIMIT=<value>

      This optional parameter instructs C\Prof to stop recording and shut down after the designated time period. For more information, see LIMIT=value units.

    • ACTIVATETRACE=1

      Set CICS trace levels required to record a minimum set of events for a full transaction profile. For more information, see ACTIVATETRACE=(level [,START [,upsize][,recording-mode]).

    • RESETTRACE=1

      Restore your trace point levels to the state they were in before recording began. These are the recommended settings for profiling. For additional options, see RESETTRACE=(level [,RESET] | [,STOP | START [,downsize]]).

    • CHECKPT=<data-set-name>

      Register data sets created during collection in a checkpoint data set. The checkpoint data set is used by the C\Prof ISPF dialog to locate data sets and by the housekeeping task to manage the removal of old data sets. If you would like to use a different data set, change the name as required. More information on the CHECKPT control statement can be found in CHECKPT.

    • ARCHDSN=<pattern>

      Defines the naming pattern for auxiliary trace data sets. You can also use this control statement if you want to use Generation Data Groups (GDGs). Rules that govern the naming of data sets can be found in ARCHDSN=pattern.

    • SUMMARY and DETAIL

      Specifies allocation attributes for SUMMARY and DETAIL archive data sets created during collection. You can change the allocation attributes for these data sets using the information supplied in SUMMARY, DETAIL, and AUXILIARY.

    • CICS=jobname

      Record from the internal trace of the specified CICS jobname. You can record from other CICS regions by inserting additional CICS control statements as required. Examples of recording from multiple regions can be found in Short burst profiling for a group of CICS regions that use MRO.

  6. Submit the JCL.

    Tip: If you save the job, you can rerun it at any time without having to regenerate the JCL.

  7. Review the collector SYSPRINT output data set to verify that recording has started. Activity in CICS will prompt the creation of archive data sets in the locations specified in the collector configuration.

  8. Recording will stop if you specified a time limit using the LIMIT control statement. Otherwise, to stop the recording at any time, use the following MVS system commands:

    MODIFY <collector-jobname>,SHUTDOWN
    STOP <collector-jobname>
    

    Note: Additional MVS system commands for control of C\Prof are described in Controlling the collector via operator commands.

  9. Review the collector SYSPRINT output data set to verify that recording has stopped.

  10. To view the collected transaction data:

    1. Enter the name of a configuration file on the C\Prof primary option menu that uses the CHECKPT data set you specified in step 5.

    2. Select option 2 Profiler on the C\Prof primary option menu.

      For more information, see Browsing the transaction list.

Additional examples of ad hoc transaction profiling

Note: A complete set of configuration options for profiling can be found in Control statement summary.

Short burst profiling for a group of CICS regions that use MRO

The following example shows a request for a short, 10-minute burst of profiling on a group of CICS regions that use multiregion operation (MRO).

//JOBCARD  JOB (ACCOUNT),'NAME'
/*JOBPARM  SYSAFF=SYS1
//*
//COLLECT  EXEC PGM=TXCMAIN
//STEPLIB  DD DISP=SHR,DSN=TXC.CPROF.STXCAUTH
//SYSPRINT DD SYSOUT=*
//SYSIN    DD *

RECORD FOR PROFILING
LIMIT=10 MINUTES
TRACECONTROL=(EXCI,TXCCICS1,TXCM)
ACTIVATETRACE=(1,START,32768)
RESETTRACE=(1,RESET)
CHECKPT=MY.CPROF.CHECKPT
ARCHDSN=+USERID.CPROF.+CICS
SUMMARY SPACE=(CYL,10,10) /* UNIT=DISK
DETAIL SPACE=(CYL,50,20) /* UNIT=DISK
GROUP=SYS1 MRO=YES
CICS=CICSP1
CICS=CICSP2
CICS=CICSP3
CICS=CICSP4
CICS=CICSP5
GROUPEND
/*

Ad hoc transaction profiling multiple CICS regions using MRO, 10-minute burst

C\Prof is configured as follows:

  • Perform an ad hoc recording of the CICS internal trace for profiling (RECORD FOR PROFILING)

  • Shut down the collector after 10 minutes (LIMIT=10 MINUTES)

  • The C\Prof trace control program (see Configuring automatic internal trace control for specific CICS regions) has been set up in each CICS region and will be invoked using EXCI (TRACECONTROL=(EXCI,TXCCICS1,TXCM))

  • For each CICS region, set all trace points required for profiling, set the status of the CICS internal trace to STARTED, and increase the size of the CICS internal trace table to 32 MB (ACTIVATETRACE=(1,START,32768))

  • When collection stops, reset the CICS internal trace for each CICS region (RESETTRACE=(1,RESET))

  • Register newly created auxiliary trace data sets in a checkpoint data set (CHECKPT=MY.CPROF.CHECKPT)

  • Names for new data sets are generated using the specified pattern (ARCHDSN=+USERID.CPROF.+CICS)

  • Define the allocation attributes for new data sets (SUMMARY and DETAIL)

  • Capture data from five CICS regions (CICS=CICSP1, etc.) that use MRO (GROUP=SYS1 MRO=YES)

Capture only poorly performing transactions over a 24-hour period

The following example shows a request for profiling of a CICS region over a 24-hour period that captures only those transactions with a response time greater than three seconds. All trace events are captured. Additional tracing is requested for the Java Virtual Machine (JVM) domain.

//JOBCARD JOB (ACCOUNT),'NAME'
/*JOBPARM SYSAFF=SYS1
//*
//COLLECT EXEC PGM=TXCMAIN
//STEPLIB DD DISP=SHR,DSN=TXC.CPROF.STXCAUTH
//SYSPRINT DD SYSOUT=*
//SYSIN DD *

RECORD FOR PROFILING
LIMIT=1 DAY
LEVEL=3
STNTRSJ=1-2 /* JVM domain
CHECKPT=MY.CPROF.CHECKPT
ARCHDSN=+USERID.CPROF.+CICS
SUMMARY SPACE=(CYL,10,10) /* UNIT=DISK
DETAIL SPACE=(CYL,50,20) /* UNIT=DISK
EXCLUDETRAN=CICS
RESPONSE=3
CICS=CICSP1
/*

Ad hoc transaction profiling capturing a day of poorly performing transactions

C\Prof is configured as follows:

  • Perform an ad hoc recording of the CICS internal trace for profiling (RECORD FOR PROFILING)

  • Shut down the collector after 1 day (LIMIT=1 DAY)

  • Collect summary and detailed transaction information and all trace events (LEVEL=3)

  • Gather additional tracing from the JVM domain (STNTRSJ=1-2)

  • Register newly created auxiliary trace data sets in a checkpoint data set (CHECKPT=MY.CPROF.CHECKPT)

  • Names for new data sets are generated using the specified pattern (ARCHDSN=+USERID.CPROF.+CICS)

  • Define the allocation attributes for new data sets (SUMMARY and DETAIL)

  • Exclude CICS transactions from collection (EXCLUDETRAN=CICS)

  • Capture only those transactions with a response time greater than 3 seconds (RESPONSE=3)

  • Capture data from one CICS region (CICS=CICSP1)