How can I get output similar to the Performance Monitor DISPLAY ACTIVE USER TASK DETAIL panel, in a batch job? The system time and user time values are particularly important to see. There may be a need to catch poorly performing applications immediately, and a batch job may be the only option available at times.
Release: All supported releases.
Some clients have asked about Dsects that might have the system time and user time for the active tasks. These fields are contained in the #TSTDS dsect, in fields TSTTIMUS (DS F at o/s x'000048') & TSTTIMSY (DS F at o/s x'00004C').
However, there is no DCMT command that displays these values for active tasks. It would be a lot of work to write an assembler program to search out all of the active tasks and find / display these values.
A better way to monitor the system might be to set system or task limits in the sysgen, and use those to try to have the jobs cancelled when they exceed the specified resources.
To see the actual results as PMRM displays them, in a batch job, you can use the UCFBatch simulator. Here are the JCL and UCFBatch commands to accomplish that:
//UCFBATCH EXEC PGM=RHDCUCFB
//STEPLIB DD DISP=SHR,DSN=<yourHLQ>.DBA.LOADLIB
// DD DISP=SHR,DSN=<yourHLQ>.CAGJLOAD
// DD DISP=SHR,DSN=<yourHLQ>.CUSTOM.LOADLIB
//SYSDUMP DD SYSOUT=*
//SYSLST DD SYSOUT=*
//SYSCTL DD DISP=SHR,DSN=<your SYSCTL file>
//SYSIDMS DD *
//SYSIPT DD *
DCUF SIMULATE OFF%ENTER
Information about DSects can be found in the CA IDMS DSect Reference.
Information about Performance Monitor and the detailed information included on each panel, can be found in the IDMS Performance Monitor User Guide and Systems Administration Guide.
All manuals can be downloaded from the CA Support Online site.