INITIATORS
SolveWare subject INITIATORS is designed to maximize initiator utilization by Control-M. It adjusts IOA resources to reflect the actual state of initiators at your site.
Solution Provided
SolveWare subject INITIATORS contains the Quantitative Resource Handling solution. This solution updates the IOA Conditions file and the Control-M Resources file according to events that affect initiator availability, such as a job start, or START, STOP, and SET commands.
Quantitative Resource Handling
This SolveWare solution uses Quantitative resources to track initiator availability. A Quantitative resource is created for each class monitored by Control-M and these resources are updated whenever changes to initiator availability are detected. If, for example, a job in Control-M is started in a specific class, Control-M does not submit the job unless the relevant Quantitative resource indicates that an initiator that serves the appropriate class is available.
Normally (that is, without this SolveWare solution), Quantitative resources can determine resource availability based only on values defined within the IOA environment. Changes to initiators that were manually started, manually stopped, manually halted, or to initiators serving a manually submitted job (that is, a job not submitted by Control-M) are not reflected in Quantitative resources.
The rules for this SolveWare solution monitor changes outside the IOA environment to initiators in the JES2 environment and adjust (that is, increase or decrease) relevant resource quantities accordingly.
Global variables that indicate initiator name, classes served by the initiator, counters and names of relevant Quantitative resources, are defined in rules INITFRST and INITCRT in this solution (see following sections). In multisystem configurations, CPU configuration is described using Global variables defined during SolveWare initialization by rule JES2GLBL in table INITSLV2. For more information, see SolveWare Initialization.
Rules
The Quantitative Resource Handling solution includes the following rules:
-
Initialize Environment, Start Monitoring Initiators
-
Set Up Initiator Global Variables
-
Perform DO RESOURCE Request
-
Reset Variables at $TI, $SI and $ZI Commands
-
JOB Started
-
JOB Ended
-
Initiator Ended
Rules Structure
The following tables describe the structures of the Quantitative Resource Handling solution rules.
Table 155 Initialize Environment, Start Monitoring Initiators Rule Structure
Item |
Description |
---|---|
Title |
Initialize Environment, Start Monitoring Initiators |
Name |
INITFRST |
Table |
INITJES2 |
Event |
INITFRST |
Event Description |
This Event rule initializes SolveWare solution INITIATORS. Global variables defined by this rule are necessary for the implementation of other rules in this solution. |
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
|
Rule Logic |
This rule issues command $DI in command-response mode to generate a list of all initiators in the system. Each line of the response (message $HASP605) describes one initiator. AutoEdit variable %%INIT_NUMBER is set according to the number of lines in the command-response. This rule also sets Global variables that are used by other rules in this solution. |
Rule Actions |
|
Activating the Rule |
The rule is triggered immediately once it has been ordered. |
Recommended Mode or Category |
During the testing period, activate the rule in LOG mode. When you are satisfied with the results of the rule and the log messages are no longer necessary, change the mode of this rule to PROD. The SolveWare category for this rule is 3—the rule is provided as an example. Implementation of the rule requires some customization. |
Customization |
Adapt the rule by changing the Global Variable list to reflect the real environment. Ensure that the appropriate number of %%CTM_CLASS_index variables are specified to define the classes to be monitored at your site. To avoid conflict with variables set by previous usage of this SolveWare, a variable with an index of one more than the number of classes must be specified with the value %%$UNDEF. If classes A and B are monitored by Control-M, the following must be specified: %%CTM_CLASS_1=A, %%CTM_CLASS_2=B, %%CTM_CLASS_3=%%$UNDEF In multisystem configurations, this rule uses Global variables defined by rule JES2GLBL. For customization information about these variables, see SolveWare Initialization. |
Table 156 Set Up Initiator Global Variables Rule Structure
Table 157 Perform DO RESOURCE Request Rule Structure
Item |
Description |
---|---|
Title |
Perform DO RESOURCE Request |
Name |
STRS |
Table |
INITJES2 |
DO RULE |
STRS resource-name resource-quantity |
Rule Description |
This rule updates Quantitative resources to inform Control-M of changes in initiator availability. |
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
%%CTM %%CTM=B. |
Rule Logic |
The quantity specified for an Quantitative resource must be four digits in length. This rule determines the number of digits in the quantity to be specified and adds the appropriate number of leading zeroes to the quantity in the DO RESOURCE statement before updating the Quantitative resource. |
Rule Actions |
|
Activating the Rule |
Once ordered, the rule remains active until deleted from Control-O. |
Recommended |
During the testing period, activate the rule in LOG mode. When you are satisfied with the results of the rule, change the mode to PROD to avoid log messages for the rule. The SolveWare category for this rule is 3—this rule is provided as an example. Implementation of the rule requires some customization. |
Customization |
The rule uses Global variables defined by rule INITFRST in this solution. For customization information, see Table 155. |
Table 158 Reset Variables at $TI, $SI, and $ZI Commands Rule Structure
Item |
Description |
---|---|
Title |
Reset Variables at $TI, $SI, and $ZI Commands |
Name |
$TI* |
Table |
INITJES2 |
Command |
$TI, $SI, or $ZI These commands affect initiator status. |
Command |
|
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
%%IN_PROCESS
|
Rule Logic |
Each time command $TI, $SI or $ZI is issued, the rule triggers rule INITCRT of this solution to check initiator status and update relevant Global variables and Quantitative resources. |
Rule Actions |
|
Activating the Rule |
Once ordered, the rule remains active until deleted from Control-O. |
Recommended Mode or Category |
During the testing period, activate the rule in LOG mode. When you are satisfied with the results of the rule, change the mode to PROD to avoid log messages for the rule. The SolveWare category for this rule is 1—little or no customization is required before implementation. |
Table 159 Job Started Rule Structure
Item |
Description |
---|---|
Title |
Job Started |
Name |
$HASP373 |
Table |
INITJES2 |
Message |
$HASP373 jobname STARTED |
Message Description |
This information message is issued when a job begins execution. |
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
|
Rule Logic |
Each time a job is started, initiator related information is changed. This rule updates all relevant Global variables and Quantitative resources. |
Rule Actions |
|
Activating the Rule |
Once ordered, the rule remains active until deleted from Control-O. |
Recommended Mode or Category |
LOG mode. When you are satisfied with the results of the rule, change the mode to PROD to avoid log messages for the rule. The SolveWare category for this rule is 3—this rule is provided as an example. Implementation of the rule requires some customization. |
Table 160 Job Ended Rule Structure
Item |
Description |
---|---|
Title |
Job Ended |
Name |
$HASP395 |
Table |
INITJES2 |
Message |
$HASP395 jobname ENDED |
Message Description |
This message is issued by JES2 when a job finishes executing. |
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
|
Rule Logic |
Each time a job is ended, initiator related information is changed. This rule updates all relevant Global variables and Quantitative resources. |
Rule Actions |
|
Activating the Rule |
Once ordered, the rule remains active until deleted from Control-O. |
Recommended Mode or Category |
During the testing period, activate the rule in LOG mode. When you are satisfied with the results of the rule, change the mode to PROD to avoid log messages for the rule. The SolveWare category for this rule is 3—this rule is provided as an example. Implementation of the rule requires some customization. |
Table 161 Initiator Ended Rule Structure
Item |
Description |
---|---|
Title |
Initiator Ended |
Name |
$HASP395 |
Table |
INITJES2 |
Message |
$HASP395 INIT ENDED |
Message Description |
This message is issued by JES2 when an initiator finishes executing. |
Basic Scheduling Parameters |
Always schedule this rule. |
Runtime Scheduling Parameters |
No special considerations. |
Global Variables |
|
Rule Logic |
When an initiator is ended, the rule updates all Global variables related to that initiator. |
Rule Actions |
Determines the sequence number of the stopped initiator. Specifies NONE in the %%JOB_index Global variable of the stopped initiator. Specifies (NONE) in the %%STC_index Global variable of the stopped initiator. Updates (decreases by one) the total number of initiators and number of available initiators (Global variables %%CLASS_class_T and %%CLASS_class_O) for all classes served by the stopped initiator. Calls rule STRS to update relevant Quantitative resources. |
Activating the Rule |
Once ordered, the rule remains active until deleted from Control-O. |
Recommended Mode or Category |
During the testing period, activate the rule in LOG mode. When you are satisfied with the results of the rule, change the mode to PROD to avoid log messages for the rule. The SolveWare category for this rule is 3—this rule is provided as an example. Implementation of the rule requires some customization. |