The Convert Job Performance command converts job performance
information for specified active jobs to an outfile. A reset
capability exists. This provides a simple summary of such things as
CPU seconds used, the percentage of CPU seconds used, transaction
count, and response time. The model file is TAAJOFDP with a format
name of JOBPERFR.
The APIs QUSLJOB and QUSRJOBI are used. Most of the information
comes from QUSRJOBI with format JOBI1000 (Elapsed performance
A typical command would be:
CVTJOBPERF SBS(xxx) OUTLIB(QTEMP)
All jobs in the specified subsystem would be output with one record
each to the JOBPERFP file in QTEMP.
Working with the results
Any query function will allow you to work with the results that are
generated into JOBPERFP.
A good TAA Tool to work with the data is PRTDBS. This will allow you
** Sort in a sequence
** Print the required fields
You begin by entering:
** The TAA Tool DSPFMT is used to list the fields in the file.
Write down the field names that you want to use to select
and/or sort. Option 5 allows you to see more details about
the fields, but probably none is needed.
** When F3 is pressed, you will see a prompt for the SORTDBF TAA
** Enter the field names you want for selection.
** Rollup to enter the field names for sorting (key fields).
** Press Enter when all selection and sorting is specified.
** A prompt for the PRTDB command will appear. The command has
several options, but for a simple use, take the defaults.
** Press Enter and a list of all of the fields in the file
(similar to what was displayed previously) will appear.
** If you enter X's for the fields you want to print and then
press Enter, the fields you selected will appear at the top
with a sequence number for each. You can add fields to the
list or change the sequence. When you press Enter without
making any changes, the command will execute.
** You should see a listing with the fields printed left to right
according to the sequence that was assigned. For decimal
fields, a total, an average, a maximum, and minimum are always
PRTDBS uses the TAA Tools DSPFMT, SORTDBF, and PRTDB. You may use
SORTDBF directly to create a selected/sorted version of JOBPERFP and
then PRTDB to display the results.
The first usage of CVTJOBPERF for a job causes an internal reset of
the information held for the jobs which are selected regardless of
the setting of the RESET parameter. The performance information is
returned as zeros.
If a later request uses RESET(*YES), the values are reset for the
selected jobs and the performance information is returned as zeros.
After a reset, the use of RESET(*NO) returns the values from the last
Note that the 'reset' function occurs when the format JOBDI1000 is
requested for a specific job. This occurs after selection of the
jobs you requested.
For example, assume you first requested information on all users.
You then ran the command again and asked for USER(USERA) with
RESET(*YES). This will reset the values for USERA, but the
information for the other users would not be reset.
Note also that the information is unique for the current job. Each
job that runs CVTJOBPERF has its own internal counters for each job.
Therefore, two jobs may request CVTJOBPERF. Using RESET(*YES) in one
of these jobs would not affect the other job.
The QUSLJOB API is used to access a list of jobs. Some selection is
allowed by the API. The QUSRJOBI format JOBDI0200 is then used to
access the subsystem name and current function. Finally, the
QUSRJOBI format JOBDI1000 is used to access the performance
If possible, you should make a selection based on the qualified job
name or the job type as this will allow selection to be done by the
QUSLAPI to improve the performance.
** Qualified job name.
The job portion defaults to *ALL. Specifying '*', *CURRENT,
or a specific job name allows selection via the API. A
generic name is valid, but generic processing occurs in the
CVTJOBPERF program and not in the API.
The user portion defaults to *ALL. Specifying *CURRENT, or a
specific user name allows selection via the API. A generic
name is valid, but generic processing occurs in the CVTJOBPERF
program and not in the API.
A job number may not be specified.
** Job type.
The default is *ALL. A specific job type such as B=Batch or
I=Interactive should be specified if you only want a specific
All other selections (such as Subsystem) are done by first using the
QUSLJOB API for all jobs and then performing the selection in the
CVTJOBPERF escape messages you can monitor for
TAA9892 No jobs exist to convert. Check selection.
Escape messages from based on functions will be re-sent.
CVTJOBPERF Command parameters *CMD
SBS The subsystem name to be converted. The default is
*ALL for all subsystems.
JOB The job name to convert. *ALL is the default for
all jobs. * meaning the current job may be entered
(the user name is ignored). *CURRENT may also be
entered to mean the name of the current user of the
job. A generic name or a specific job name may be
USER The user name to convert. *ALL is the default for
all users. A generic name or a specific user name
may be entered. *CURRENT may be entered to mean the
name of the user of the current job.
JOBNBR The job number of the job to convert. *ALL is the
default for all job numbers.
JOBTYPE The job type to convert. * is the default and means
all job types. The other supported values are:
A = Autostart
B = Batch (includes BCH, BCI, PJ etc)
I = Interactive
M = Monitor
R = Spool reader
S = System job
W = Spool writer
TYPEDSC The type description to be converted. A list of up
to 10 entries may be entered. The default is *ALL.
The values that may be entered are:
ASJ = Autostart
BCH = Batch
BCI = Batch immediate
EVK = Started by a procedure start request
INT = Interactive
M36 = Advanced S/36 server job
MRT = Multiple requester terminal
PJ = Prestart job
PDJ = Print driver job
RDR = Reader
SBS = Subsystem monitor
SYS = System
WTR = Writer
The TYPEDSC parameter works in conjunction with the
JOBTYPE parameter. Specifying JOBTYPE(B) and
TYPEDSC(ASJ) is a better performing solution that
specifying JOBTYPE(*ALL) and TYPEDSC(ASJ).
One of the major purposes of the TYPEDSC parameter
is to be able to distinguish Batch jobs which can
have a description of either BCH or BCI.
If you specify an inconsistency such as JOBTYPE(B)
and TYPEDSC(INT), no jobs will be converted as
B=Batch jobs cannot have a description of INT.
STATUS The status to convert. *ALL is the default. Up to
20 values may be entered such as SELW, MSGW, etc.
Use the prompter for the list of values.
See the WRKACTJOB help text of the 'Status' field
for a full discussion of the valid entries.
RESET A *YES/*NO value for whether to reset the
statistics. The value applies to the selected jobs
(not necessarily all jobs). For example, if you
select for a specific user, other user's performance
statistics are not reset.
*NO is the default to not reset the statistics. If
no statistics have previously requested from the
current job, it acts as a reset and zeros are
returned for the performance information.
*YES causes a reset of the information for the
OUTLIB The library to output the JOBPERFP file to. The
default is *LIBL which may only be used if the
JOBPERFP file may be found on the library list. If
the file does not exist, a library must be named.
OUTMBR The member to be written to. The default is
REPLACE A *YES/*NO parameter for whether to replace the data
in the outfile.
*YES is the default which will clear the member
before writing any records.
*NO may be specified to add to the existing data.
The following TAA Tools must be on your system:
CRTUSRSPC Create user space
DUPTAADBF Duplicate TAA data base file
EDTVAR Edit variable
EXTLST2 Extract list 2
RTVSYSVAL3 Retrieve system value 3
SNDCOMPMSG Send completion message
SNDESCINF Send escape information
SNDESCMSG Send escape message
SNDSTSMSG Send status message
None, the tool is ready to use.
Objects used by the tool
Object Type Attribute Src member Src file
------ ---- --------- ---------- ----------
CVTJOBPERF *CMD TAAJOFD QATTCMD
TAAJOFDC *PGM CLP TAAJOFDC QATTCL
TAAJOFDR *PGM RPG TAAJOFDR QATTRPG
TAAJOFDP *FILE PF TAAJOFDP QATTDDS