Global user exits are used by CICS® IA to
collect resource dependencies.
Table 1 shows the global user exits
used by
CICS IA to
collect resource dependencies.
Table 1. Global
user exits used by CICS IA to
collect resource dependenciesCICS commands |
Type of command |
Exit point |
File Control. See Note. |
XFCREQC |
File Data. See Note. |
XFCSREQC |
Program Data. See Note. |
XPCFTCH |
Transaction Data. See Note. |
XPCFTCH |
Interval Control. See Note. |
XICEREQC |
EXEC CICS LINK. |
XPCREQC |
Transient Data. See Note. |
XTDEREQC |
Temporary Storage Data. See Note. |
XTSEREQC |
All other EXEC CICS commands listed in Details of dependencies and affinities collected that are not in one of the above
categories. |
XEIIN and XEIOUT |
Note: For a list of the EXEC CICS
commands that can be monitored by the Collector, categorized
by CICS domain, that is, File
Control, Interval Control, Transient Data, Temporary Storage, and
others, see Details of dependencies and affinities collected.
|
NON-CICS commands |
Type of command |
Exit point |
DB2®: EXEC
SQL |
XRMIOUT |
IMS™: EXEC
DLI |
XRMIOUT |
IMS: CBLTDLI,
ASMTDLI and PLITDLI |
XDLIPOST |
MQ: MQM |
XRMIIN and XRMIOUT |
Natural: ADABAS CALLS and NATURAL PROGRAM CALLS |
XRMIOUT and task-related user exit program |
Note: If you specify that any subset of Natural
commands are to be monitored, both the CICS IA
XRMIOUT exit program and task-related user exit program are called
for each monitored Natural command.
Table 2 shows the global and task-related
user exits used by
CICS IA to
collect transaction affinities.
Table 2. Global
and task-related user exits used by CICS IA to
collect transaction affinitiesCICS commands |
Type of affinity information
collected |
Exit point |
Updates affinity lifetime information with Business
Transaction Services (BTS) activity and process information. |
XBADEACT |
Intercepts the intertransaction and transaction-system
commands that might cause affinities. |
XEIOUT |
From CICS TS
for z/OS® V2.2 onwards, updates
affinity lifetime information with LINK3270 information. |
XFAINTU |
Intercepts the expiration of interval control
elements (ICEs) and thus deduces which affinity table elements can
be deleted because they are no longer of interest. |
XICEXP |
Intercepts certain CICS "DFH" messages to detect terminal
logoff and user signoff and thus deduce whether affinity lifetimes
are of type LOGON or SIGNON. |
XMEOUT |
Runs at the start and end of the user task.
Its purpose is to intercept the end of pseudoconversations and thus
deduce whether affinity lifetimes are of type PCONV. |
Task-related user exit program |
Table 3 shows the global
and task-related user exits used by
CICS IA to
collect Command Flow data.
Table 3. Global and
task-related user exits used by CICS IA to
collect Command Flow dataCICS commands |
Type of command |
Exit name |
Exit program |
EXEC CICS LINK |
XEIIN |
CIUXACO3 |
EXEC CICS command |
XEIOUT |
CIUXACO2 |
DB2, IMS, MQ calls |
XRMIIN |
CIUXACR3 |
XRMIOUT |
CIUXACR2 |
START of task |
TRUE |
CIUXACT1 |

Notes:
- If you specify that a subset of CICS commands
is to be monitored, the CICS IA exit
programs at the corresponding exit points, shown in Table 1 and Table 2,
are called for that subset of commands.
- If you specify that any subset of DB2, IMS, or MQ commands is to be monitored,
the CICS IA XRMIOUT
exit programs are called for all the DB2, IMS, and MQ commands listed in
Non-CICS API commands detected
(not just for the
subset of monitored non-CICS commands). However, the exit programs
perform much less processing on the commands that the Collector has
not been instructed to monitor than on those that it has been instructed
to monitor.
The invocation of a global user exit program imposes an overhead
on each affected command. Applications that issue many affected commands
with little other processing will notice the greatest percentage increase
in pathlength. Clearly, the Collector will
impact the performance of the region on which it is running.
To optimize the performance of the
Collector:
- Pause the collection of data during peak workloads.
You can continue the collection of data when the workloads have decreased.
Select option 8, Timer Options in the Region
Configuration menu.
- Collect data for one type of command at a time, which
can be of particular value for the following CICS API commands:
- Temporary storage
- Programs
- Transactions
Select option 4, CICS Options and option
5, DB2/IMS/MQ Options in the Region Configuration
menu. For affinities select option 7, Affinity Options.
- Collect data for a restricted set of transaction identifiers
by specifying the prefix of those transactions. Select the Transaction
Prefix option in the General Options menu.
- Not collecting data for applications for which you already have
collected data, or you have documentation that enables you to understand
the application. Updating the transaction exclude list, or the transaction
and program exclude lists. For more information see Creating your own program exclude, transaction exclude, and resource prefix lists. When you collect the information for
a given application, add the information to the exclude lists.
- Switch off the query on the SYSIBM.SYSSTMT and SYSIBM.SYSPACKSTMT
tables during the data save CINB transaction, for DB2 resource collection. Set the Inquire
on DB2 resources option in the General Options menu to N for
no.
- Control the number of times the CINB transaction is called. You
can control this in the following ways:
- Switching off the Maintain usage counts option
in the General Options menu to reduce the number of times that records
are modified in the data space and subsequently saved to the VSAM
data files. Switching off usage count recording reduces the cost of
processing each CICS command,
and reduces the workload of the save transaction, CINB.
- Switching off the Perform periodic saves option
in the General Options menu. No records are saved to the VSAM data
files until the Collector is
stopped. Switching off periodic save reduces the overhead of the
background CINB transaction, but runs the risk of losing data if CICS is shut down or CINT is purged
before the Collector has
successfully stopped.
- Using the Trigger for CINB start
option in the General Options menu. This value calls CINB when a given
number of updates are made. An update is performed when a new record
is added to the data space, or when an existing record is modified.
Existing records are modified only if the Maintain Usage
counts option is selected. A value of 1 for
the Trigger for CINB Start option disables
the trigger mechanism, that is, the CINB is not called. Switching
off the trigger mechanism reduces the overhead of the background CINB
transaction, but runs the risk of losing data if CICS is shut down, or CINT is purged before
the Collector has successfully stopped.
- Control the amount of TSQueue data that you collect.
If your TSQueue resource name consists of a prefix and a counter,
consider defining the TSQueue prefix to the resource prefix list.
See Creating a resource prefix list. For example, this approach
will replace TSQueue names DFH00001, DFH00002 .. .DFH99999 with one
name, DFH+++++. You will therefore have only one entry for each CICS command that uses this TSQueue
structure.
For information about how to control these options, see Changing the Collector options.