PROFILING - Transaction Profiling report

The PROFILING operand requests the Transaction Profiling report.

The command format for the Transaction Profiling report is:

You must specify two PROFILING operands for each Transaction Profiling report:

You can specify CICSPA control operands between the two PROFILING operands, allowing you to specify different control operand values for processing the report data and the baseline data. However, only the following control operands affect the processing of the baseline data: APPLID|NOAPPLID, INPUT, SELECT, SELECT2, SMFSTART, SMFSTOP, and ZONE. For other control operands, if you specify different values for the report data and the baseline data, the Transaction Profiling report uses the values in effect for the report data; that is, the PROFILING(REPORT(...)...) operand.

For details on how the APPLID|NOAPPLID, INPUT, and ZONE control operands affect the processing of the baseline data, see the description of the BASELINE operand.

The following options apply to both PROFILING operands:

ID(profile#)
Explicitly matches the two PROFILING operands for each Transaction Profiling report by an integer value, profile#.

If you only request a single Transaction Profiling report in a batch job, so you have only one PROFILING(REPORT(...)...) operand and one PROFILING(BASELINE(...)...) operand, then an ID is unnecessary, and you can specify the two PROFILING operands in either order.

The ID operand is always optional, even when you request more than one Transaction Profiling report in the same batch job.

If you omit IDs, the order of the PROFILING operands is significant: CICS PA counts the PROFILING(REPORT(...)...) operands and the PROFILING(BASELINE(...)...) operands, and then matches the first PROFILING(REPORT(...)...) operand with the first PROFILING(BASELINE(...)...) operand, the second with the second, and so on.

If you specify IDs, the order of PROFILING operands is not significant:

CICSPA ...
       PROFILING(ID(1),REPORT(...)...),
       ...
       PROFILING(ID(2),REPORT(...)...),
       ...
       PROFILING(ID(2),BASELINE(...))
       ...
       PROFILING(ID(1),BASELINE(...))

Never specify a mix of PROFILING operands with and without IDs. To improve the readability of your batch commands, specify IDs and keep each REPORT and BASELINE pair together.

REPORT|BASELINE(SMF|hdbname)
REPORT indicates that this PROFILING operand defines the report data and other Transaction Profiling report options.

BASELINE indicates that this PROFILING operand defines the baseline data.

The values of BASELINE and REPORT define the source of the baseline data and the report data. For example:

  • REPORT(SMF) defines the source of the report data as the SMF files identified by either the most recent INPUT operand, if specified, or the DDname SMFIN, if no INPUT operand is specified.
  • BASELINE(PROD) defines the source of the baseline data as the HDB named PROD that is defined in the Repository identified by the DDname CPAHDBRG.
Note: Do not name a performance HDB "SMF" if you plan to use it for a Transaction Profiling report.

If the report data and the baseline data both reside in HDBs, then the HDBs must exist in the same Repository.

If the report data and the baseline data both reside in the same set of SMF files, then you only need to specify a single INPUT operand or the DDname SMFIN:

CICSPA ...
       INPUT(SMFIN001),
       PROFILING(REPORT(SMF), ...),
       PROFILING(BASELINE(SMF), ...)

If the report data and the baseline data reside in different sets of SMF files, then you need to specify an INPUT operand before the PROFILING operand for the baseline data. In the following example, the report data resides in the SMF files identified by the DDname SMFIN001, and the baseline data resides in the SMF files identified by the DDname SMFIN002:

CICSPA ... 
       INPUT(SMFIN001),
       PROFILING(REPORT(SMF), ...),
       INPUT(SMFIN002),
       PROFILING(BASELINE(SMF), ...)
Start of change SUFACTOR End of change
Start of change

Specifies a CPU SU conversion factor to apply to the SMF file or HDB. The SUFACTOR value is used to convert the transaction CPU time to service units in the CPUSU field. The SUFACTOR operand includes two keywords to identify the SMF file or HDB name and its associated conversion factor. The conversion factor must be a decimal number or integer in the range 1 - 999999999 (nine 9s).

A different SUFACTOR can be applied to the BASELINE and REPORT data. The following example shows how to specify the PROFILING operand where the REPORT and the BASELINE are both sourced from an SMF file:

CICSPA IN(ddname1),
       SUFACTOR(ddname1(nnnnn.nnn)), 
       PROFILING(ID(nnn),REPORT(SMF),
          ...
CICSPA IN(ddname2),
       PROFILING(ID(nnn),BASELINE(SMF),
          ...
       SUFACTOR(ddname2(nnnnn.nnn))]

This example shows how to specify the PROFILING operand where the REPORT is sourced from an SMF file and the BASELINE is sourced from an HDB:

CICSPA IN(ddname),
       SUFACTOR(ddname(nnnnn.nnn)), 
       PROFILING(ID(nnn),REPORT(SMF),
          ...
       PROFILING(ID(nnn),BASELINE(hdname),
          ...
       SUFACTOR(hdbname(nnnnn.nnn))]
End of change
SMFSTART, SMFSTOP
Filter the input records of the report data or the baseline data according to the specified time period. For input records in SMF files, SMFSTART and SMFSTOP refer to SMF record time stamps. For input records in HDBs, SMFSTART and SMFSTOP refer to transaction start times. (HDBs do not contain SMF record time stamps.)

For details on specifying values for SMFSTART and SMFSTOP, see SMFSTART and SMFSTOP.

When specified as control operands of the CICSPA command, rather than as suboperands of the PROFILING operand, SMFSTART and SMFSTOP apply to all of the reports that follow them, including the Transaction Profiling report. When specified "locally", as suboperands of the PROFILING operand, SMFSTART and SMFSTOP override the "global" control operands, but only for that PROFILING operand.

Typically, when running the Transaction Profiling report in a Report Set with other reports, you only specify local SMFSTART and SMFSTOP values for the baseline data (in the PROFILING operand that contains the BASELINE suboperand). The report data uses the global values specified by the SMFSTART and SMFSTOP CICSPA control operands:

CICSPA ...
       SMFSTART(...),SMFSTOP(...),  1 
       PROFILING(
                 BASELINE(PROD),
                 SMFSTART(...),SMFSTOP(...),  2 
                 ...),
       PROFILING(REPORT(SMF), ...)
 1 
"Global" control operands whose values apply to all reports that follow.
 2 
"Local" values that apply only to this PROFILING operand for the baseline data, overriding the global values.
INTERVAL
Specifies a time interval for summarizing transaction activity over time. The interval is in the range 1 second to 24 hours in the format hh:mm:ss for hours, minutes, and seconds.

This operand applies only when the FIELDS operand specifies a time stamp key field, such as START or STOP (transaction start or stop time). For each time interval covered by the report period, CICS PA accumulates input records, and creates a line of summarized data. If INTERVAL is not specified, the default is 00:01:00 (1 minute).

Summary HDBs only: Data in a Summary HDB is already summarized by the interval that was used to load the data into the HDB. To further summarize the data, specify a multiple of the interval that was used to load the data. If you specify an interval that is equal to or less than the interval used to load the data, the report uses the data as-is, without further summarization.

Typically, you specify the same time interval for the report data, in PROFILING(REPORT(...)...), and for the baseline data, in PROFILING(BASELINE(...)...), so that the Transaction Profiling report compares data summarized over time intervals of the same length. In this case, you must explicitly specify INTERVAL in both PROFILING operands; the baseline data will not default to the same interval value as the report data.

Time intervals begin at the start of the day (00:00:00), not from the start of the report period. This ensures that the time stamp key field values in the summarized report data and the summarized baseline data are synchronized.

If you want to summarize report data at time intervals, and compare each time interval with a single, common set of summarized baseline data, then omit the time stamp key field from the FIELDS operand for the baseline data. For example, you could compare hourly performance data with a single set of performance data for the entire day.

In rare cases, you might want to specify different time intervals for the report data and the baseline data. The Transaction Profiling report matches each report data interval with the baseline data interval that covers the start of the report data interval. For example, suppose you summarize report data using an interval of 15 minutes and baseline data using an interval of 30 minutes. The Transaction Profiling report matches each consecutive pair of 15-minute report data intervals with the same single 30-minute baseline data interval, because the 30-minute baseline data interval covers the start of both 15-minute report data intervals. That is, the Transaction Profiling report matches 15 minutes of report data with 30 minutes of baseline data, and then matches the next 15 minutes of report data with the same 30 minutes of baseline data. The time interval you specify for the baseline data should be greater than or equal to the time interval for the report data. Otherwise, some baseline data intervals will not match the start of any report data intervals, and so that baseline data will not appear in the report.

FIELDS
Specifies the key fields that you want report data and baseline data records to be grouped and sorted by, the "non-key" fields whose values you want to compare, and the functions for summarizing the non-key field values (for example, as an average or a total).
To understand how the Transaction Profiling report uses the FIELDS operand, it is useful to think of it as a comparison of two Performance Summary reports:
  • One for the report data, as specified by the PROFILING(REPORT(...), FIELDS(...)...) operand
  • One for the baseline data, as specified by the PROFILING(BASELINE(...), FIELDS(...)...) operand
See Transaction Profiling report compares two Performance Summary reports.

For details on specifying the FIELDS operand, see the description of the FIELDS operand for the Performance Summary report, SUMMARY(FIELDS. The values that you can specify for the FIELDS operand in the Transaction Profiling report and the Performance Summary report are identical.

The FIELDS operand in the Transaction Profiling report involves the following additional considerations:

  • In the PROFILING(REPORT(...)...) operand, FIELDS defines the Report Form. The Report Form specifies how the Transaction Profiling report summarizes the report data, and also which fields appear on the Transaction Profiling report. The following FIELDS operand defines a Report Form with two key fields, transaction start time and transaction ID, and two non-key fields, task count and response time:
    FIELDS(START,TRAN,TASKCNT,RESPONSE)
  • If you do not specify a Report Form, the Transaction Profiling report creates one:
    • If the report data resides in SMF files, the Transaction Profiling report uses a default form.
    • If the report data resides in an HDB, the Transaction Profiling report uses the HDB Template as the Report Form.

      For a List HDB Template, the Transaction Profiling report treats all character and date fields as key fields, and uses the average function to summarize the other, non-key, fields. The key fields must precede the non-key fields in the Template: otherwise, CICS PA reports an error.

  • In the PROFILING(BASELINE(...)...) operand, FIELDS defines the Baseline Form. The Baseline Form and the Report Form together specify how the Transaction Profiling report summarizes the baseline data:
    • The Transaction Profiling report ignores any fields in the Baseline Form that are not in the Report Form. For example, if the Baseline Form contains key fields that are not in the Report Form, then these key fields are ignored when summarizing the baseline data. Similarly, any non-key fields that appear in the Baseline Form but not the Report Form are ignored.
    • The Transaction Profiling report ignores the order of the fields in the Baseline Form. For example, when summarizing the baseline data, the Transaction Profiling report uses the key fields in the Baseline Form that also appear in the Report Form, but according to the order of those key fields in the Report Form.
    • If you do not specify a Baseline Form, the Transaction Profiling report creates one:
      • If the baseline data resides in an HDB, the Transaction Profiling report uses the HDB Template as the Baseline Form. As for any Baseline Form, the Transaction Profiling report ignores any fields in the HDB Template that are not in the Report Form, and also ignores the order of the fields in the HDB Template.

        For a List HDB Template, the Transaction Profiling report treats character and date fields as key fields, and uses the average function to summarize the other, non-key, fields.

      • If the baseline data resides in SMF files, the Transaction Profiling report uses the Report Form as the Baseline Form.
  • When summarizing baseline data, the Transaction Profiling report uses only the time-of-day part of any START or STOP key field (transaction start or stop), ignoring the date part. The summarized baseline data for a time-of-day interval matches the summarized report data for that time-of-day interval on any date. For example, if you specify a report data interval of five days and a baseline data interval of five days, then the Transaction Profiling report summarizes each day of report data separately, but summarizes the five days of baseline data together. The Transaction Profiling report compares each daily set of summarized report data with the same set of summarized baseline data. To compare each weekday of the previous week with the same weekday from a week one year ago (compare Monday with another Monday, Tuesday with another Tuesday, etc.), you must run five separate Transaction Profiling reports.
  • In a Performance Summary report, in addition to key fields, you can select one numeric field as Ascending or Descending to activate Alternate Sequencing. This changes the order of report lines from Sort Key to numeric field sequence. The Transaction Profiling report ignores any Alternate Sequencing.
SELECT|SELECT2(PERFORMANCE(INCLUDE|EXCLUDE
Specifies what data to include or exclude from the report or extract based on data field values. See Using SELECT statements for an explanation and examples.

The following options apply only to the PROFILING operand that contains the REPORT suboperand (if you specify these options in the PROFILING operand that contains the BASELINE suboperand, they are ignored):

LINECount
Controls the number of lines per page in the Transaction Profiling report. See LINECount for further information.
TITLE1, TITLE2
Controls the report title (left and right half of subheading line) for the Transaction Profiling report. See TITLE1 and TITLE2 for further information.
OUTPUT
Controls the report output DDname. If not specified, CICS PA assigns a DDname in the format PROFnnnn where nnnn is the report sequence number 0001-9999 to uniquely identify the output. See OUTPUT for further information.
EXTERNAL
Specifies the optional DDname for the work data set used by the external SORT facility. If specified, CICS PA performs an external sort. If not specified, CICS PA performs an internal sort where the records are sorted in storage by CICS PA. The CICS PA dialog always generates the EXTERNAL operand with a DDname in the format CPAXWnnn where nnn is the sequence number 001-999. See EXTERNAL for further information.
THRESHOLD(%abovebaseline,%belowbaseline)
Specifies minimum thresholds for the Change values that you want the report to include. Change values are the percentage difference between the report data and the baseline data (for details, see the PRINT operand):
  • If a Change value is within the thresholds, the report excludes the Change value and its corresponding Delta value (shows them as blanks).
  • If all values on a Change line are within the thresholds, and you have also specified the NOWITHINTHRESHOLD operand, then the report excludes that entire Change line, its corresponding Report, Baseline, and Delta lines, and its key field values.

You can specify either or both of the following thresholds:

%abovebaseline
This threshold applies only to positive Change values; that is, where the Report value is greater than the Baseline value. The allowed values for this threshold are integers in the range 0-999.

For example, a threshold of 150 excludes Change values smaller than +150%.

%belowbaseline
This threshold applies only to negative Change values. The allowed values for this threshold are integers in the range 0-100.

For example, a threshold of 80 excludes Change values smaller than -80%.

For example, THRESHOLD(150,80) excludes Change values within +150% and -80%.

If you omit both thresholds or you specify both thresholds as 0, the report includes all Change values.

If you specify a value for %abovebaseline but you omit %belowbaseline, then the report:

  • Applies the threshold to positive Change values
  • Excludes all negative Change values

If you specify a value for %belowbaseline but you leave %abovebaseline blank, then the report:

  • Applies the threshold to negative Change values
  • Excludes all positive Change values
PRINT(REPORT,BASELINE,DELTA,CHANGE, FULL|EXCEPTIONSONLY,NOBLANKLINES|BLANKLINES)
The values REPORT, BASELINE, DELTA, and CHANGE specify the lines of data that you want the Transaction Profiling report to show for each non-key field in the Report Form:

If you do not specify any lines, the Transaction Profiling report shows all lines. Otherwise, the Transaction Profiling report shows only the specified lines, except for the Report line, which is always implicitly specified, regardless of whether the value REPORT is explicitly specified in the PRINT operand. For example, to show only the Report line, specify PRINT(REPORT). To show the Report line and the Change line, specify either of these equivalent operands: PRINT(REPORT,CHANGE) or PRINT(CHANGE).

The remaining values of the PRINT operand specify conditions for including or excluding lines:

FULL|EXCEPTIONSONLY
FULL includes lines in the report even when the difference between the report data and the baseline data is within the thresholds specified by the THRESHOLDS operand. This is the default. Specifying FULL ensures that the Report line is always included, regardless of thresholds. However, specifying FULL does not necessarily mean that the report always includes all lines specified by the PRINT operand. If you also specify NOBLANKLINES, the report excludes any blank Baseline, Delta, or Change lines.

EXCEPTIONSONLY excludes all lines, including the Report line, where the difference between every non-key field in a row of summarized baseline data and the same fields in the matching row of summarized report data are all within the thresholds.

The Baseline Form can specify a subset of the non-key fields in the Report Form, leaving the summarized baseline data with fewer non-key fields than the summarized report data. Specifying EXCEPTIONSONLY, together with a Baseline Form that contains only one non-key field, enables you to produce a Transaction Profiling report that only shows data where that field is not within thresholds. For example, if you specify a Baseline Form where the only non-key field is average response time, then you can produce a Transaction Profiling report that shows only the transactions that are not within an acceptable percentage difference of a baseline average response time.

NOBLANKLINES|BLANKLINES
NOBLANKLINES excludes any Baseline, Delta, or Change lines whose data consists entirely of blank values. Blank values on these lines indicate either fields with no baseline data or, on the Delta and Change lines, fields where the difference between the report data and the baseline data is within the thresholds specified by the THRESHOLDS operand. NOBLANKLINES has no effect on the Report line, which shows the summarized report data even when NOBLANKLINES excludes all other lines. To exclude all lines, including the Report line, when the difference between the report data and the baseline data is within the thresholds, specify EXCEPTIONSONLY.

BLANKLINES includes all specified lines, even when their data consists entirely of blank values.

Omitting the PRINT operand or specifying PRINT() is equivalent to specifying PRINT(REPORT,BASELINE,DELTA,CHANGE, FULL,NOBLANKLINES).


Information Information

Feedback


Timestamp icon Last updated: Thursday, 7 November 2013


http://pic.dhe.ibm.com/infocenter/cicsts/v5r1/topic//users-guide/tranprof.htm