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:

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.

DB2® connection status
Use this system 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.
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.
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.