Policy system rules
System rules define the action to be taken when something of interest happens in a CICS® system, such as a resource state change, a threshold being crossed, or an unusual system state or action. Policies that define system rules can be deployed either to a single CICS region or with a CICS platform. They cannot be deployed with a CICS application.
The supported system rule types are as follows:
- AID threshold
- Use this rule type to define the action to be taken when an EXEC CICS START request that meets all of the following conditions is issued:
- The TERMID option is specified with a value that is the same as the terminal where the transaction is running.
- The FROM option is specified.
- The INTERVAL and TIME options are not specified.
- The request would cause the current number of AIDs in the CICS system to exceed a threshold.
- Bundle available status
- Use this rule type to define the action to be taken when the available status of a bundle that
declares application entry points changes from or to a specific state. To restrict the action to
specific bundles, specify the bundle filter in the rule definition. If you want the specified action to be taken only when the status change is made
by a specific transaction or a task running under a specific user ID, specify the transaction ID or
user ID filter in the rule definition.
If a bundle is deployed with a CICS application, the messages and events that are produced when a bundle available status rule is triggered contain the application context information.
Note:Bundle available status rules are not applicable to any bundles that do not declare application entry points.
- Bundle enable status
- Use this rule type to define the action to be taken when the enable status of a bundle changes
from or to a specific state, or when the enable status of a bundle changes from a specific state to
another specific state. To restrict the action to specific bundles, specify the bundle filter in the
rule definition. If you want the specified action to be taken only when the status change is made
by a specific transaction or a task running under a specific user ID, specify the transaction ID or
user ID filter in the rule definition.
If a bundle is deployed with a CICS application, the messages and events that are produced when a bundle enable status rule is triggered contain the application context information.
- DBCTL connection status
- Use this rule type to define the action to be taken when the status of the connection between
CICS and DBCTL changes from or to a specific state. If you want the specified action to be taken
only when the status change is made by a specific user ID, specify the user ID filter in the rule
definition. Note:
DBCTL connection status rules will not trigger for changes in the status of a DBCTL connection during CICS initialization when the DBCTLCON=YES system initialization parameter is specified.
- Db2® connection status
- Use this rule type to define the action to be taken when the status of a Db2 connection changes from or to a specific state. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
- File open status
- Use this rule type to define the action to be taken when the open status of a CICS FILE resource changes from or to a specific state. To restrict the action to specific file resources, specify the file filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
- File enable status
- Use this rule type to define the action to be taken when the enable status of a CICS FILE resource changes from or to a specific state. To restrict the action to specific file resources, specify the file filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
- IBM® MQ connection status
- Use this rule type to define the action to be taken when the status of a connection between CICS
and IBM MQ changes from or to a specific
state. If you want the specified action to be taken only when the status change is made
by a specific transaction or a task running under a specific user ID, specify the transaction ID or
user ID filter in the rule definition.
Note:
IBM MQ connection status rules will not trigger for changes in the status of a CICS-MQ connection during CICS initialization when the MQCONN=YES system initialization parameter is specified.
- IPIC connection status
- Use this rule type to define the action to be taken when the status of a IPIC connection (IPCONN) changes from or to a specific state. To restrict the action to specific IPIC connections, specify the connection name filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific user ID, specify the user ID filter in the rule definition.
- Message
- Use this rule type to define the action to be taken when CICS issues a DFHxxnnnn message or when CICSPlex® SM issues an
EYUxxnnnn message. To restrict the action to a specific CICS or CICSPlex SM message, specify the message ID
filter. To restrict the action to specific instances of a message, specify one or more message
insert filters. If you want the specified action to be taken only when the message is issued by a
specific transaction or a task running under a specific user ID, specify the transaction ID or user
ID filter. Not all CICS or CICSPlex SM messages result in evaluation of a message system rule. No message system rules are evaluated for messages that are issued by the EC, EP, or MP components of CICS, that is, all DFHECnnnn, DFHEPnnnn and DFHMPnnnn messages. In addition, events are not emitted for message system rules that specify the event action for these messages:
- CICS initialization messages that are issued before event processing starts. Event processing is started before phase 2 initialization PLT programs are run.
- CICS termination messages that are issued after event processing stops. Event processing is stopped after all shutdown PLT programs have run.
You can determine whether a message system rule will be evaluated for a specific message, based on its description in CICS messages. If a message description contains a list titled XMEOUT parameters/Message inserts, you can define a message system rule for it; otherwise, the message is not enabled for message system rules. For example, you can define a message system rule for message DFHFC0208 but not for message DFHDU0205.
A message system rule will be evaluated regardless of whether or not a message is suppressed by either an XMEOUT global user exit program or the system initialization parameter MSGLVL=0.
- MRO connection status
- Use this rule type to define the action to be taken when the status of a MRO connection changes from or to a specific state. To restrict the action to specific MRO connections, specify the connection name filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
- Pipeline enable status
- Use this rule type to define the action to be taken when the enable status of a CICS pipeline changes from or to a specific state. To restrict the action to specific pipeline, specify the pipeline name filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
- Program enable status
- Use this rule type to define the action to be taken when the enable status of a CICS program changes from or to a specific state. To restrict the
action to specific programs, specify the program name filter in the rule definition. If you want the specified action to be taken only when the status change is made
by a specific transaction or a task running under a specific user ID, specify the transaction ID or
user ID filter in the rule definition.
If a program is deployed with a CICS application, the messages and events that are produced when a program enable status rule is triggered contain the application context information.
- Transaction class tasks
- Use this rule type to define the action to be taken when the number of active tasks in a CICS transaction class goes above or below a specific threshold, which is represented by a percentage of the maximum number of active tasks in a transaction class (the MAXACTIVE value). The threshold is chosen from a predefined list of 50%, 60%, 70%, 80%, 90%, or 100%. To restrict the specified action to specific CICS TRANCLASS resources, specify the transaction class filter in the rule definition. For more information, see User tasks and transaction class tasks system rules.
- Transaction abend
- Use this rule type to define the action to be taken when a transaction encounters an unhandled
abend.
To restrict the specified action to a specific abend code, specify the abend code filter in the rule definition. If you want the specified action to be taken only when the status change is made by a specific transaction or a task running under a specific user ID, specify the transaction ID or user ID filter in the rule definition.
A transaction abend system rule with the event action will not be evaluated for any transaction abend originating in any task that runs an event processing adapter program.
- User tasks
- Use this rule type to define the action to be taken when the number of active tasks in a CICS system goes above or below a specific threshold, which is represented by a percentage of the maximum user tasks in the CICS system (the MXT value). The threshold is chosen from a predefined list of 50%, 60%, 70%, 80%, 90%, or 100%. For more information, see User tasks and transaction class tasks system rules.