Customizing and Programming
Customizing and Programming
Version 4.Release 2
IBM
SC34-2715-02
Note
Before using this information and the product it supports, read the information in Appendix G,
“Notices,” on page 259.
Edition Notes
This edition applies to IBM Z System Automation (Program Number 5698-SA4) Version 4, Release 2, an IBM® licensed
program, and to all subsequent releases and modifications until otherwise indicated in new editions.
This edition replaces SC34-2715-01.
© Copyright International Business Machines Corporation 1996, 2019.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with
IBM Corp.
Contents
Figures................................................................................................................. xi
Tables..................................................................................................................xv
Accessibility...................................................................................................... xvii
Using assistive technologies.................................................................................................................... xvii
Keyboard navigation of the user interface............................................................................................... xvii
iii
Programming Recommendations..............................................................................................................20
Global Variable Names.............................................................................................................................. 21
iv
Concept.................................................................................................................................................69
Customizing Automation for Proxy Resources.................................................................................... 70
Preparing Message Automation........................................................................................................... 71
Automating Linux Console Messages........................................................................................................71
The Linux Console Connection to NetView..........................................................................................72
Linux Console Automation with Mixed Case Character Data.............................................................. 72
Security Considerations....................................................................................................................... 72
Restrictions and Limitations................................................................................................................ 72
How to Add a Processor Operations Message to Automation..................................................................72
Messages Issued by a Processor Operations Target System..............................................................73
Building the New Automation Definitions............................................................................................76
Loading the Changed Automation Environment..................................................................................76
Using Pipes and ISQCCMD for Synchronous HW Commands.................................................................. 77
Automating Asynchronous Hardware Commands with ISQCCMD and PIPES.........................................78
VM Second Level Systems Support........................................................................................................... 79
Guest Target Systems...........................................................................................................................79
Customizing Target Systems................................................................................................................ 80
Tips to find SNMP MIB attributes for GETRAW queries ........................................................................... 81
v
Chapter 11. Enabling Sysplex Automation.......................................................... 113
Sysplex Functions.................................................................................................................................... 113
Managing Couple Data Sets............................................................................................................... 113
Managing the System Logger............................................................................................................. 114
Managing Coupling Facilities............................................................................................................. 115
Recovery Actions................................................................................................................................116
Hardware Validation...........................................................................................................................123
Enabling Hardware-Related Automation................................................................................................ 124
Step 1: Defining the Processor.......................................................................................................... 124
Step 2: Using the Policy Item PROCESSOR INFO............................................................................. 124
Step 3: Defining Logical Partitions.....................................................................................................124
Step 4: Defining the System...............................................................................................................125
Step 5: Connecting the System to the Processor..............................................................................125
Step 6: Defining Logical Sysplexes.................................................................................................... 125
Step 7: Defining the Physical Sysplex................................................................................................125
Enabling Continuous Availability of Couple Data Sets............................................................................125
Enabling WTO(R) Buffer Shortage Recovery...........................................................................................126
Enabling System Removal....................................................................................................................... 126
Step 1: Defining the Processor and System...................................................................................... 127
Step 2: Defining the Application with Application Type IMAGE....................................................... 127
Step 3: Defining an Application Group.............................................................................................. 127
Step 4: Automating IXC102A and IXC402D Messages.................................................................... 127
Step 5: Verify Automation table entries............................................................................................ 128
Enabling Long Running Enqueues (ENQs).............................................................................................. 128
Step 1: Defining Resources................................................................................................................129
Step 2: Making Job/ASID Definitions.................................................................................................129
Step 3: Defining IEADMCxx Symbols.................................................................................................129
Step 4: Defining Commands.............................................................................................................. 129
Step 5: Defining Snapshot Intervals.................................................................................................. 129
Enabling Auxiliary Storage Shortage Recovery.......................................................................................130
Step 1: Defining the Local Page Data Set.......................................................................................... 130
Step 2: Defining the Handling of Jobs............................................................................................... 130
Defining Common Automation Items..................................................................................................... 130
Customizing the System to Use the Functions....................................................................................... 130
Additional Automation Operator IDs................................................................................................. 130
Switching Sysplex Functions On and Off........................................................................................... 130
vi
Actions in Response to Incoming WTORs......................................................................................... 146
Customizing how WTORs Are Stored by SA z/OS..............................................................................146
Processing of Primary WTORs........................................................................................................... 147
Usage Notes....................................................................................................................................... 147
vii
AOFEXC24.......................................................................................................................................... 164
AOFEXC25.......................................................................................................................................... 164
AOFEXC26.......................................................................................................................................... 164
AOFEXC27.......................................................................................................................................... 164
AOFEXC28.......................................................................................................................................... 164
AOFEXC29.......................................................................................................................................... 165
Pseudo-Exits............................................................................................................................................165
Automation Control File Reload Permission Exit.............................................................................. 165
Automation Control File Reload Action Exit...................................................................................... 165
Subsystem Up at Initialization Commands....................................................................................... 165
Testing Exits............................................................................................................................................. 165
viii
Appendix B. Customizing the Status Display Facility........................................... 231
Overview of the Status Display Facility................................................................................................... 231
How the Status Display Facility Works.............................................................................................. 231
Types of SDF Panels...........................................................................................................................231
Status Descriptors..............................................................................................................................233
SDF Tree Structures........................................................................................................................... 233
How Status Descriptors Affect SDF................................................................................................... 234
How SDF Helps Operations to Focus on Specific Problems............................................................. 236
How SDF Panels Are Defined............................................................................................................. 237
Dynamically Loading Tree Structure and Panel Definition Members............................................... 237
Using SDF for Multiple Systems.........................................................................................................238
SDF Components................................................................................................................................239
How the SDF Task Is Started and Stopped....................................................................................... 240
SDF Definition Process............................................................................................................................ 240
Step 1: Defining SDF Hierarchy..........................................................................................................241
Step 2: Defining SDF Panels.............................................................................................................. 242
Step 3: (Optional) Customizing SDF Initialization Parameters......................................................... 245
Step 4: (Optional) Defining SDF in the Customization Dialog........................................................... 246
Index................................................................................................................ 295
ix
x
Figures
1. Application Lifecycle..................................................................................................................................... 3
8. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (1/3)........................................49
9. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (2/3)........................................49
11. ISPF dialog defining the Job Log Monitoring of specific messages.........................................................50
12. ISPF dialog defining the Job Log Monitoring of specific messages of a multi-step job..........................50
13. ISPF dialog defining the Job Log Monitoring of a non-message print line (1/2).....................................50
14. ISPF dialog defining the Job Log Monitoring of a non-message print line (2/2).....................................51
15. Common MAT entry for message INGY1300I and jobs defining a message ID for monitoring............. 51
16. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (3/3)..................................... 51
17. Common MAT entry for message INGY1300I and jobs without defining a message ID for
monitoring.................................................................................................................................................. 51
xi
23. Delete a File...............................................................................................................................................88
xii
48. Example SDF Panels............................................................................................................................... 232
xiii
xiv
Tables
2. Application Start............................................................................................................................................1
xv
24. Example GDPS_SYSTEM_SHUTDOWN Command Processing Entry.....................................................142
27. Global Variables That Define the Installation Defaults for Specific Commands...................................221
xvi
Accessibility
Accessibility features help users with physical disabilities, such as restricted mobility or limited vision, to
use software products successfully. IBM Z System Automation supports several user interfaces. Product
functionality and accessibility features vary according to the interface.
The major accessibility features in this product enable users in the following ways:
• Use assistive technologies such as screen reader software and digital speech synthesizer, to hear what
is displayed on screen. Consult the product documentation of the assistive technology for details on
using those technologies with this product and screen magnifier software
• Operate specific or equivalent features using only the keyboard
• Magnify what is displayed on screen.
The product documentation includes the following features to aid accessibility:
• All documentation is available to both HTML and convertible PDF formats to give the maximum
opportunity for users to apply screen-reader software
• All images in the documentation are provided with alternative text so that users with vision impairments
can understand the contents of the images.
Prerequisites
Throughout this book, it is expected that readers are familiar with Z System Automation and the following
documentation:
• IBM Z System Automation Operator's Commands
• IBM Z System Automation Programmer's Reference
• IBM Z System Automation Defining Automation Policy
Deleted Information
• The global variable AOFPAUSE is removed.
• The Automated System Resource Discovery (autodiscovery) function is dropped from Z System
Automation V4.2.
Sometimes it can happen that an application terminates unexpectedly. In this case it might be necessary
to complete some cleanup actions before the application can be restarted. Consequently it is necessary
to know:
What are the important messages at the points in the application's life-cycle as illustrated in Figure 1
on page 3 above?
For example a message IEF403I is sent when the system observes that an application has been started.
IEF404I is issued when the application terminated.
Are there are other kinds of usable events at the specific points?
Step 3 discusses also the situation of an unplanned application termination.
Are there important messages at point 3 and 4 of Figure 1 on page 3 in case of an unplanned
termination?
For example a message IEF450I points to an unplanned termination.
Topology
Normally the application to be automated depends on the underlying infrastructure, like JES2 or TCPIP.
This means that this infrastructure must be available before you can start the application.
Vice versa the application can be a prerequisite for other applications, before they can be started.
Likewise you need to think about which other applications must be terminated prior to the termination of
the application.
As described above, there are relationships between the applications.
At this point it might be helpful to draw a picture and to visualize the relationships between the
application in case of a start and a stop situation.
SA z/OS provides Best Practice policies containing solutions for several products. The solutions are
illustrated in PDF file format located in Add-on policies.
Please refer to the appropriate file to find out more information about the solution you are trying to
automate.
The following sections provide more details about each part of an automation procedure.
System Operations
Automation procedures for applications and MVS components that are called from the NetView
automation table should always perform an automation check by calling the AOCQRY automation routine.
AOCQRY checks that the automation flags allow automation.
These checks eliminate the risk of automating messages for applications that should not be automated,
or for which automation is turned off. AOCQRY also initializes most of the common and task global
variables that are used in the automation procedure with values specific to the application.
Refer to IBM Z System Automation Programmer's Reference for more information on coding the
automation check routine.
Processor Operations
Most of the processor operations commands run only when processor operations has been started. To
determine whether processor operations is active, you can use the ISQCHK command in your automation
routines.
If processor operations is not running, ISQCHK returns return code 32 and issues the message:
ISQ0301 Cannot run cmd-name command until Processor Operations has started.
Your application can then issue the ISQSTART command to begin processor operations.
Checking Thresholds
You can check and update thresholds by calling the CHKTHRES automation routine. Use CHKTHRES to
track and maintain a threshold, and to change the recovery action based on the threshold level exceeded.
For more information see IBM Z System Automation Programmer's Reference.
When you issue the ISQEXEC command to process an automation procedure, all of the commands
are processed in the order in which they occur in the automation procedure. This is because the
ISQEXEC command sends work to a target control task, which processes commands serially. Any other
commands or automation routines issued to the same console by the ISQEXEC command are queued
for processing by the target control task and do not start until the previous command or automation
procedure completes.
The ISQEXEC command also frees the original task from any long-running command sequence. This lets
you use the issuing task, such as an OST, for other work.
The ISQEXEC command does not lock consoles to ensure command serialization; the command
serialization process is due to the target control task allocation scheme. Commands and automation
routines are processed in the order in which they occur; however, it is possible for commands from other
tasks to interrupt the command sequence.
For more information about the ISQEXEC command, see IBM Z System Automation Operator's Commands.
Locking a Console
Several routines and operators may attempt to address the same console at the same time. The ISQEXEC
command does not prevent other tasks from interrupting the sequence of commands being processed by
the target control task; it does not lock the console.
To prevent a sequence of commands from being interrupted, use the ISQXLOC and ISQXUNL commands.
The ISQXLOC command locks access to the console. If a task attempts to issue a command to a locked
console, the task is told that the console is locked, and the command fails. When you are finished with
the sequence of commands that must be processed without interruption, issue the ISQXUNL command to
unlock access to the console.
You can use the ISQXLOC and ISQXUNL commands within automation routines to ensure that they
complete without interference from other tasks. For automation routines that issue a number of SA z/OS
commands, put the following command after the ISQEXEC command and near the beginning of the
routine:
ISQXLOC target-system-name SC
This locks access to the target system console to the current task until the lock is dropped by the
command:
ISQXUNL target-system-name SC
Only the task that issued ISQXLOC can successfully issue ISQXUNL. If an ISQXLOC command is issued
from a locked sequence of commands, it is rejected because the console is already locked.
When you lock a system console for a target system running on a logical partition, you lock that system
console for all other target systems using that processor. A command sent to a system console for any
other target system (logical partition) on that target hardware definition does not run until the console is
unlocked.
If your automation routine cannot wait for a console to be released, use the ISQOVRD command to gain
control of the console. Use the following command only in critical automation routines:
ISQOVRD target-system-name SC
When the routine issuing the override command completes, the lock is removed and the console is
available.
********************************************
******* Preparation *******
********************************************
AOCQRY
CDEMATCH
ACFCMD/ACFREP
- do required action:
issue command / respond reply
For more information on the mentioned automation routines refer to IBM Z System Automation
Programmer's Reference. For more information on command processing or reply processing refer to IBM Z
System Automation User's Guide.
*********************************************************
120I ...
121I ...
122I ...
123I 10 40 THE EAGLE HAS &1
124I ...
*********************************************************
When AOCMSG is called as specified in the automation procedure, DSIMSG member DSIABC12 is
searched for message ABC123I. Substitution for variable &1 occurs, and the following message is
generated:
Note that the message is defined with a 10 and a 40 between the message ID and the first word of the
message. These are the SA z/OS message classes to which the message belongs. When the message is
issued a copy is sent to every notification operator who is assigned class 10 or class 40 messages.
Refer to IBM Z NetView Customization Guide for further information on developing new messages.
4 save_msg = msgid()
save_text = msgstr()
lrc = 0
/* -------------------------------------------------------------- **
** Check return code from AOCQRY **
** 0 = ok 1 = global flag off **
** 2 = specific flag off 3 = resource not in ACF **
** 4 = bad parms 5 = errors/timeout **
** -------------------------------------------------------------- */
Select
7 When svretcode >= 3 Then Do
"AOCMSG "loc.0me",206,,"time()",,,"cmd",RETCODE="svretcode
lrc = 1
End
8 When svretcode > 0 Then Do
"GLOBALV GETT AUTOTYPE SUBSAPPL SUBSTYPE SUBSJOB"
"AOCMSG "loc.0me",580,,"time()","SUBSAPPL","SUBSTYPE"," ,
SUBSJOB","AUTOTYPE","save_msg
lrc = 1
End
Otherwise Do
9 Parse Var save_text With . 'JOBNAME=' save_job 'ASID=' save_asid .
10 ehkvar1 = save_job
ehkvar2 = save_asid
"GLOBALV PUTT EHKVAR1 EHKVAR2"
11 cmd = 'ACFCMD ENTRY='||AOFSYSTEM||',MSGTYP='||save_msg
cmd
svretcode = rc
If loc.0debug = 'Y' Then
"PIPE LIT /Called ACFCMD; Return Code was "||svretcode||"/" ,
"| LOGTO NETLOG"
/* ---------------------------------------------------------- **
** Check return code from ACFCMD **
** 0 = ok 1 = no commands found in ACF **
** 4 = bad parms 5 = errors/timeout **
** ---------------------------------------------------------- */
12 If svretcode > 1 Then Do
"AOCMSG "loc.0me",206,,"time()",,,'"cmd"',RETCODE="svretcode
lrc = 1
End
End
End /* End of Select svretcode */
13 Exit lrc
14 Aof_Error:
Signal Off Halt; Signal Off Failure
Signal Off Novalue; Signal Off Syntax
errtype = condition('C')
errdesc = condition('D')
Select
When errtype = 'NOVALUE' Then rc = 'N/A'
When errtype = 'SYNTAX' Then errdesc = errortext(rc)
Otherwise Nop
End
"AOCMSG "errtype",760,,"loc.0me","sigl","rc","errdesc
Exit -5
11
Call ACFCMD to issue the command specified in the configuration files. The Automation Control File
entry for the message IEA099A could look like this:
MVSESA IEA099A,
CMD=(,,'MVS C &EHKVAR1,A=&EHKVAR2')
12
Issue message AOF206I if call to ACFCMD fails.
13
Exit with return code that indicates successful or unsuccessful processing.
14
This code logs a message if an error is trapped at step 1 .
When assist mode is on, actions that are normally taken by SA z/OS automation procedures, such
as issuing a command or reply, are not performed. Instead messages that describe what would have
happened are written to the netlog.
The assist mode is associated with automation flags (Automation, Initstart, Start, Recovery, Terminate or
Restart). Whether assist mode is used for any action is determined by the automation flag. This is checked
to see whether that action is permitted.
Cases where you might want to use assist mode include:
• During early stages of developing and using your automation policy
• After changing your automation policy, such as after adding an application to automation
Myproc:
Procedure expose loc.
If loc.0debug = 'Y' Then
'PIPE LIT /' loc.0debug ' has called procedure MYPROC/',
'| LOGTO NETLOG'
Return
WRITEWTO CLIST
WTO &PARMSTR
&EXIT
The sample automation procedure can issue any single-line message by calling the routine. For example,
to issue message ABC123I, which indicates the start of a program, the command is:
Programming Recommendations
This section contains tips and techniques that may help to reduce the coding effort required when writing
your own automation procedures, and to improve performance of your automation procedures.
• Use variables, such as &SUBSAPPL, &SUBSTYPE, and &SUBSJOB in place of parameter values.
To display output from a self-written command, prefix it with the procedure name. To be independent of
a possible name change, use the 'parse source' REXX statement which provides the procedure name as
the third token.
Using NetView command list language variable JOBNAME for the resource field on an AOCQRY call, an
automation procedure can be written to support a known message for any job that can issue a message.
• Use defaults when possible to minimize coding.
• Use generic error codes (see CDEMATCH).
• Use available message parsing techniques:
– Use the NetView command PARSEL2R or REXX PARSE command to parse a message without relying
on a field position in a message.
– Parse a message in the NetView automation table and send only necessary fields to an automation
procedure.
• Consider not coding the ENTRY field in CDEMATCH calls (default is the SUBSAPPL returned from the last
AOCQRY call).
• Use appropriate automation flags.
• Review the coding requirements in IBM Z NetView Customization Guide including restrictions to consider
when writing code, such as:
– Restrictions when TVBINXIT is on
– Variable names
– Macro use
– Register use
– Re-entering programs
• Use SA z/OS automation routines where possible, because they reduce your maintenance overhead.
• Use SA z/OS processor operations common commands where possible, because these:
1. Are independent of the hardware type of the target system's processor
2. Minimize the need for changes to your automation routines as you add new processors to your
enterprise
• Consider using the NetView VIEW command to display online help text associated with new code, and
to develop a fullscreen interface for new commands that are a part of the new code. Refer to IBM Z
NetView Customization Guide for information on the VIEW command.
SA z/OS expects certain return codes from all monitor routines, either from SA z/OS provided ones or from
your own routines. These can be one of the following:
RC
Meaning
0
Active
4
Starting
8
Inactive
12
Error
Note: When you write your own monitor routine, you must consider that this routine will also be executed
during initial status determination. This process occurs prior to common global variable AOFCOMPL is set
to YES and message AOF540I is issued, indicating INITIALIZATION RELATED PROCESSING HAS BEEN
COMPLETED.
Health Monitoring
Overview
Health monitoring is accomplished using special resources called monitor resources. Monitor resources,
which have a resource type MTR, are policy objects that are used to obtain the health status of
other resources, typically applications or application groups, or more generally, any object that can be
monitored. The health status is useful when you need to know how well a resource is performing and not
simply that it is active.
The health status can be used to provide application-specific performance and health monitoring
information, for example, an application may be active but it is failing to meet performance objectives
defined by the system administrator. The health status can be used either for information only, or by the
automation manager to make decisions and, if necessary, trigger automation for the application.
Monitor resources are defined in the customization dialog with entry type MTR. They are resources with
similar characteristics as all other SA z/OS resources.
Monitor resources are connected to application resources (APLs) or application group resources (APGs).
The health status of the monitored object is propagated to the APLs and APGs and results in a combined
health status there. You can define and connect MTRs in the customization dialog (see IBM Z System
Automation Defining Automation Policy ).
Monitor resources obtain the health status of an object in two different ways:
• Actively, by polling—that is executing a monitoring command periodically
• Passively, by processing events
Active monitors are scheduled periodically based on the interval defined in the MTR policy.
Passive monitors do not have a monitor interval but can have a monitor command defined for them for
initial health status determination. They rely on other events to set the health status using the INGMON
command.
Monitor resources can be explicitly bound to the object that they are monitoring and optionally to a job.
This allows SA z/OS to handle a variety of monitoring events in a generic way. A monitored object can
be, for example, an OMEGAMON XE situation, or an event posted by CICSPlex System Manager (CICSPlex
SM). See “Passive, Event-Based Health Monitoring” on page 28. Note that the monitored object is
derived from the monitor resource name, if none was specified.
There can be one or more recovery commands associated with each health status (NORMAL, WARNING,
MINOR, CRITICAL and FATAL). These commands are invoked by SA z/OS when the monitor resource
switches to the corresponding health status.
You can display and control monitor resources with the DISPMTR command. Monitor resources are also
displayed on the Tivoli Enterprise Portal (TEP) as well as SDF, provided that the appropriate inform list
specifications have been made.
Recovery Techniques
User data in the MESSAGES/USER DATA policy item can be used to disable additional recovery processing
while other recovery is already in progress.
In combination with the predefined keyword DISABLETIME, the recovery disable time can be specified
in the formats hh:mm:ss, mm:ss, :ss, or mm. While recovery is disabled, no commands are processed on
behalf of this monitor resource for messages and exceptions that are specified in the MESSAGES/USER
DATA policy item.
Recovery is automatically enabled after the recovery disable time has expired. Recovery can also be
enabled prematurely by calling the INGMON command with the option CLEARING=YES, for example:
In some cases, it is necessary to force increasingly strong recovery actions over a period of time. This
can be accomplished using a PASS count that starts at 1 and runs to 99. SA z/OS maintains the PASS
count individually per message or exception, and increments the PASS count each time that message or
exception is processed. Upon successful recovery, it is the installation's responsibility to reset the PASS
count. When specified with option CLEARING=YES, INGMON enables command processing for messages
and exceptions, and resets the PASS count.
The health status values affect the compound status in the automation manager.
Most monitor commands use UNKNOWN, NORMAL, and WARNING statuses. The MINOR, CRITICAL, and
FATAL statuses can be used as gradients to indicate that a problem is getting worse. BROKEN and FAILED
are statuses that describe the status of the monitor itself and may be seen if an error is encountered with
the monitor command. A health status of FATAL will trigger an application move as part of automated
recovery.
FATAL is a guaranteed automatic ForceDown, and, if available, failover for the application associated with
the monitor.
Optionally, the monitor routine can issue a message describing the condition that is trapped by the
SA z/OS process that invoked the monitor. The message can be viewed on the DISPMTR panel.
Every monitor command needs several basic steps:
1. Issue one or more commands to collect data and interrogate the results.
2. Based on the results from the command or commands, set the return code to a value from 1 through 8
and, optionally, perform processing based on that value.
3. Optionally, supply more descriptive information about the health status in a message that can be
viewed with the DISPMTR command.
4. Exit with the return code so SA z/OS can set the health status appropriately.
Figure 5 on page 28 is an example using the NetView PING command within a PIPE to query the status
of a TCP/IP stack on a remote system. The IP address is passed on input. The routine uses the average
round trip time (RTT) for the request provided in message BNH770I to determine the health.
/*REXX MYMON */
Arg parm
monrcs='BROKEN FAILED NORMAL WARNING MINOR CRITICAL FATAL DEFER'
'PIPE (STAGESEP | NAME PING)',
'| NETV PING' parm,
'| LOCATE 1.8 /BNH770I /',
'| STEM out.'
if out.0 = 0 then
lrc = wordpos('FATAL',monrcs)
else
do
parse var out.1 . 'averaging' ms 'ms' .
say 'PING lasted' ms 'ms'
select
when ms < 10 then lrc = wordpos('NORMAL',monrcs)
when ms < 20 then lrc = wordpos('WARNING',monrcs)
when ms < 30 then lrc = wordpos('MINOR',monrcs)
when ms < 40 then lrc = wordpos('CRITICAL',monrcs)
otherwise lrc = wordpos('FATAL',monrcs)
end
end
Return lrc
Overview
Passive, event-based monitoring allows you to react to events, for example a message, an OMEGAMON XE
situation, or a CICSPlex SM event, directly. In contrast to active health monitoring, SA z/OS does not have
to query the monitored object status periodically but is informed only when such an event has occurred.
The definitions in the MONITOR INFO policy item for a monitor resource allow you to define an object that
the monitor resource is bound to and optionally a job that the monitor resource accepts events from.
The Monitored Object specification for the monitor resource can follow any naming convention that might
be required for the monitoring process. For example, for CICS monitoring it has the prefix CPSM, followed
by the CICS name, the type (such as a connection), and the name. For a link called CT12, the monitored
object is called as follows, for example:
CPSM.CICSTOR1.CONNECT.CT12.
Whereas for monitoring OMEGAMON XE situations, it has the prefix ITM, followed by the situation name,
for example: ITM.MYAUXSHORTAGE_WARN.
There can be only one monitored object per monitor resource but more than one monitor resource can be
bound to a monitored object, for example, several IMS monitors might specify OLDS as an object.
You can also optionally specify the Monitored Jobname that a monitor resource accepts events from.
Thus, for example in the case of IMS monitor resources, you might specify a job name of IMS1 for monitor
resource MTR1 and IMS2 for MTR2. If an event arrives for OLDS and the issuer is IMS1 only MTR1 is
affected.
Event Types
In the simplest case, an event is represented by a plain message issued by a job. All monitor resources
that register for a particular message accept this message unless you also specified the monitored job
name.
In other cases, for example for OMEGAMON XE situations or events reported by CICSPlex SM, the event
is represented by a triggering message provided by SA z/OS for the purpose of health monitoring only.
This message, ING150I, that contains the monitored object name or the job can then be used by SA z/OS
to locate the monitor resource and to set the health status or issue commands. This allows SA z/OS to
handle a variety of monitoring events.
INGMON, the command that is responsible for health monitoring, is invoked from the NetView®
automation table whenever ING150I or any other message a monitor resource has registered for is
issued. It locates the monitor resource for a given monitored object or job and then looks up the code
match table for the health status or commands, or both, that should be issued whenever the triggering
event occurs.
Programming Techniques
Commands that are called by INGMON have access to the message that triggered the invocation using the
NetView SAFE, AOFMSAFE, for example:
In addition, INGMON fills the task global variables &EHKVAR0, &EHKVAR1–9, and &EHKVART with
tokens that are derived from the message or exception that INGMON was invoked by. For messages,
the assignment starts with the message ID, and for exceptions, it starts with the exception ID.
INGMON also sets the following task global variables:
&SUBSAPPL
Contains the monitor name.
&SUBSTYPE
Contains the string MONITOR.
&SUBSDESC
Contains the description of the monitor resource.
The following examples illustrate how message and exception tokens are assigned to these task global
variables.
Example 1:
Example 2:
When defining commands to be issued by the INGMON command, the &EHKVARx variables can be used
to be replaced by the corresponding tokens of the message or exception.
When INGMON looks up the monitor resource for a given monitored object or job name, or both, it is
possible to skip monitor resource processing dynamically through a user-specified REXX expression. In
the absence of such a REXX expression, INGMON locates the monitor resource with the given monitored
object name for the job that issued the message and proceeds with health status setting and commands
as defined in the automation policy. By adding a REXX expression to the User Defined Data panel within
the MESSAGES/USER DATA policy item for the automated message, further processing can be disabled
depending on the result of this REXX expression.
To do this, the predefined keyword INGMON_FUNCTION is specified as a keyword and an arbitrary
REXX expression is defined as the value in the User Data Processing panel. If the result of the REXX
expression is false (that is, 0), processing is stopped, otherwise INGMON processing continues. The
following example for the message ID MYMTR controls monitor resource processing, based on the day
of week that is defined in the common global variable DAY_OF_WEEK. (processing continues only if the
current day is not a Sunday):
When a monitor resource is defined with a monitor command but without an interval, the initial health
status of such a passive monitor resource is obtained at monitor resource start time only. Any other health
status update must be derived from events that the monitor resource has registered for.
It is however possible to issue the monitor command at any point in time by executing the command
AOFRCMTR. This command expects the monitored object name and optionally a job name as parameters.
It locates the corresponding monitor resource and, if specified, issues the monitor command.
See IBM Z System Automation Programmer's Reference for the syntax of AOFRCMTR.
Overview
The SA z/OS OMEGAMON interface lets you gather a wide range of performance data on a system. You
can gather data from the following performance monitoring products:
• IBM OMEGAMON for z/OS
• IBM OMEGAMON for CICS on z/OS
• IBM OMEGAMON for IMS on z/OS
• IBM Tivoli OMEGAMON XE for DB2 Performance Expert on z/OS
• Other IBM Tivoli Monitoring products running on z/OS
Exception analysis is an OMEGAMON classic feature that monitors predefined thresholds in a system.
Each time exception analysis is invoked, an exception is displayed on the OMEGAMON console if a
threshold is exceeded. Using SA z/OS, you can then act on these exception alerts by running execs or
issuing commands, including issuing commands back to the host OMEGAMON.
Situations are much like exceptions but they are based on a combination of logical expressions and even
on the status of other embedded situations. Each product based on the IBM Monitoring infrastructure,
such as IBM OMEGAMON, provides a set of predefined situations that you can use as is, or modify
as you wish. You can also create your own situations to tailor the monitoring to your specific needs.
Situations are edited and displayed on the Tivoli Enterprise Portal (TEP). Using a TEP function called
Reflex Automation, you can inform SA z/OS about a particular situation and then act upon it.
IBM Monitoring services also allow you to interact with each and every product based on this
infrastructure through a standardized SOAP services interface on the Tivoli Enterprise Monitoring Server
(TEMS). SOAP services exist, for example, to obtain data from a particular object collected by IBM
OMEGAMON for z/OS (formerly IBM Tivoli OMEGAMON XE on z/OS). Other services allow you to
automatically manage situations and TEP workflow policies, or to send universal messages to the
universal message console.
Assumptions
Various topologies are possible for SA z/OS with IBM OMEGAMON classic monitors and IBM Tivoli
Monitoring products such as OMEGAMON XE:
• There can be one or more monitoring product per system
• Connectivity is through VTAM® and the NetView Terminal Access Facility (TAF) for OMEGAMON classic
monitors and through TCP/IP for OMEGAMON XE
• A TEMS SOAP Server is running locally, on a remote system or on a distributed system
• SA z/OS can act as a focal point either:
– Globally, monitoring data from monitoring products running on different systems
– Locally, monitoring data from monitoring products running on the local system
The following assumptions are made about the topologies that can be adopted for interaction with
OMEGAMON classic monitors:
1. The OMEGAMON product is installed on each system where MVS and CICS, DB2, or IMS is installed.
2. OMEGAMON monitors are installed and configured already to support multiple VTAM-based
connections to it. For interoperability with SA z/OS, logical units of type 3270 model 2 (24x80) are
required.
3. OMEGAMON monitors are setup to interact with an external security product such as IBM SecureWay
Security Server for z/OS (formerly RACF®).
4. OMEGAMON exceptions are reported when the threshold that is defined in OMEGAMON is exceeded.
That threshold must be agreed within an installation because it must cater for the least severe
condition that there might be an alert for.
The following assumption is made regarding the interaction with OMEGAMON XE:
1. Reflex automation is executed on the OMEGAMON XE agent that created the corresponding situation
event
OMEGAMON Interaction
The following subsections assume that, for OMEGAMON classic monitors interaction, you have defined
one or more OMEGAMON sessions and automated functions that are designated to handle network
communication using the SA z/OS customization dialog.
For details on defining OMEGAMON sessions, refer to the OMEGAMON SESSIONS and AUTHENTICATION
policy items in the Network (NTW) entry type and to the OPERATORS policy in the Auto Operators (AOP)
entry type described in IBM Z System Automation Defining Automation Policy.
For OMEGAMON XE interaction using SOAP services you have to specify each SOAP server in the
automation policy that you want to connect to. For details on defining SOAP servers, refer to the SOAP
SERVER policy item in the Network (NTW) entry type described in IBM Z System Automation Defining
Automation Policy .
INGOMX EXECUTE,NAME=OMSY4MVS,CMD=CSAA
| IPXNG CSAA
SUMMARY
| IPXNG
+
| IPXNG +
System
| IPXNG + Maximum Pre-CSAA Orphan
Usage
| IPXNG + ------- -------- -------
---------------0___2___4___6___8___100
| IPXNG + CSA 3312K 1247K 0 1247K 37.6%|------>
|
| IPXNG + ECSA 307740K 78797K 0 78797K 25.6%|---->
|
| IPXNG + SQA 1620K 660K 0 660K 40.8%|------->
|
| IPXNG + ESQA 145696K 23930K 0 23930K 16.4%|-->
|
INGOMX EXECUTE,NAME=OMSY4MVS,CMD=ALLJ,MOD=#
| IPXNG #ALLJ 166
INGOMX EXECUTE,NAME=OMSY4MVS,CMD=ALLJ,MOD=<
| IPXNG <ALLJ *MASTER* PCAUTH RASP TRACE DUMPSRV XCFAS GRS
SMSPDSE+
| IPXNG + CONSOLE WLM ANTMAIN ANTAS000 OMVS IEFSCHAS JESXCF
ALLOCAS+
| IPXNG ...
INGOMX TRAP,NAME=OMSY4MVS,XTYPE=(XREP)
| IPXNG + XREP Number of Outstanding Replies = 5
/* REXX-Routine EXMINOR
*/
cmd.1 = "CMD=SYS" /* Major command, issued ahead of its minors */
cmd.2 = "CMD=FCSA" /* Minor: CSA frames below 16M */
cmd.3 = "CMD=FCOM" /* Minor: CSA, LPA, SQA, and nucleus below 16M */
cmd.0 = 3
'PIPE STEM cmd. COLLECT',
'| NETV INGOMX EXECUTE,NAME=OMSY4MVS,CMD=*',
'| CONSOLE ONLY'
* IPXNG EXMINOR
| IPXNG SYS >> WLM Goal mode OPT=00 SYSRES=(150526,8812) <<
| IPXNG fcsa 328 1312 K
| IPXNG fcom 849 3396 K
There is no need to explicitly establish a session between an operator and a particular OMEGAMON
monitor before using INGOMX; such sessions are established automatically on their first use.
Selective protection of individual OMEGAMON sessions and commands, or both, is possible based
on the NetView Command Authorization Table. Details can be found in the appendix, "Security and
Authorization", in IBM Z System Automation Planning and Installation.
To use a SOAP service, for example to obtain certain attributes from an OMEGAMON XE object, you
first have to describe the request's parameters in the form of an XML document. The XML document is
validated and rejected by the SOAP server if it is found to be incorrect or incomplete. The spelling of
the names enclosed in '<' and '>' is significant because XML is a case-sensitive document description
language. Also, because the structure of every XML document is hierarchical, each element must be
enclosed by an opening name (for example, '<CT_Get>') and a corresponding closing name denoted by a
forward slash preceding the name (for example, '</CT_Get>').
The following is an example that describes the request parameters to retrieve the Job_Name, the
address space ID (ASID), and the CPU_Percent attributes from the OMEGAMON XE for z/OS object,
Address_Space_CPU_Utilization, for all jobs with a CPU percentage greater than 1.0. In this example, the
object that has been queried is collected on the TEMS called KEYAS:CMS.
<CT_Get>
<target>KEYAS:CMS</target>
<object>Address_Space_CPU_Utilization</object>
<attribute>Job_Name</attribute>
<attribute>ASID</attribute>
<attribute>CPU_Percent</attribute>
<afilter>CPU_Percent;GT;10</afilter>
</CT_Get>
You can pass this XML document either by pointing INGOMX to a sequential or partitioned data set, or in
the default SAFE, assuming INGOMX is invoked in a NetView PIPE.
When INGOMX is invoked, the SOAP server that is connected to must be specified. In the following
example, it is assumed that you have defined a SOAP server called KEYAYA in the SOAP SERVER policy
item of the Network (NTW) entry type using the SA z/OS customization dialog. This definition includes
the host name or IP address, the SOAP server's port and the path name of the SOAP service. The
request parameters as shown above are located in the member GETCPU in the partitioned data set
SYS1.SOAP.DATA:
soapds = 'SYS1.SOAP.DATA(GETCPU)'
soapsrv = 'KEYAYA'
Address NETVASIS 'PIPE (END % NAME GETCPU)',
On the successful return of INGOMX, the output of the SOAP server is returned in the multiline ING160I
message:
The first row of this message documents the IP address of the SOAP server that responded, that is,
KEYAYA in the example (IP address anonymized).
The second row describes the names of the attributes returned by the SOAP server. The attribute names
are separated from each other by the non-printable character X'FF' (represented by a :).
The third and all following rows contain the actual data that has been requested. The attribute values are
presented in the same sequence as the corresponding attribute names in the second row. Also, like the
attribute names, the attribute values are separated from each other by the non-printable character X'FF'
(represented by a :).
The tabular structure of this message allows you to easily process it in a NetView PIPE.
If no exception matches the XTYPE filter that is provided by the caller, INGMTRAP creates a ING081I
message that is not exposed to NetView but written to the monitor resource's log to document that no
exception has been found. For example:
INGMTRAP can only be used as a monitor command. This means that it has to be specified directly as
a monitor command in the definition of a monitor resource, or it has to be called on behalf of such a
monitor command. The following example illustrates what you need to specify on the MONITOR INFO
policy in entry type monitor resource (MTR) in order to trap outstanding operator replies that are reported
by OMEGAMON for MVS session OMSY4MVS:
INGMTRAP NAME=OMSY4MVS,XTYPE=(XREP)
Be careful when specifying a list of exceptions: each exception may cause an ING080I message to be
issued. Because each occurrence of an ING080I message triggers health status processing of the monitor
resource, make sure you understand the impact that this may have on the monitor resource's final health
status.
For more details about INGMTRAP refer to IBM Z System Automation Programmer's Reference. For more
details about defining monitor resources, refer to IBM Z System Automation Defining Automation Policy .
Example Scenario
To illustrate how SA z/OS and OMEGAMON operate together, consider the following scenario.
Suppose there is a DB2 application that should be continuously monitored. Of particular
interest is the availability of primary active logs. The LOGN exception indicates that fewer
primary active logs exist than specified by the respective threshold value. This is considered a
critical health indicator because it can cause a DB2 hang situation if the last primary active log
becomes 100% full. Such a situation can only be resolved by making one or more additional
primary active logs available again.
In order to monitor this situation and react accordingly, the automation policy has to be changed. First,
define the session attributes for the OMEGAMON for DB2 monitor, if they do not yet exist, to be able to
establish a VTAM connection. The OMEGAMON session is referred to by its session name. Then review
the number of session operators (automation operators) that are started to handle the VTAM session
traffic and add an additional one if a higher degree of parallelism is required. You need to ensure that the
number of session operators and predefined NetView tasks are identical.
Next, add a new monitor resource (MTR) that periodically requests exception information from this
OMEGAMON session. Add the MTR by means of a HasParent relationship to the DB2 subsystem to be
monitored. This ensures that the MTR is activated when the DB2 subsystem is started, and deactivated
when the DB2 subsystem is stopped. Also define the MTR via a HasMonitor relationship to the DB2
subsystem to ensure that the monitor's health status can be propagated to the application.
While the MTR is active, it uses the monitor command, INGMTRAP, to gather OMEGAMON exceptions that
currently exist, based on the thresholds that are defined in the OMEGAMON for DB2 installation profile.
INGMTRAP analyses all exceptions returned by OMEGAMON and filters out those exceptions that the
MTR is interested in, in this example, LOGN. SA z/OS subsequently issues message ING080I to initiate
exception processing.
Finally, also add a new rule to the NetView automation table (using the SA z/OS policy) that executes a
REXX automation procedure to add a new log data set to the pool of primary active data sets whenever
the LOGN exception is reported and the health status is CRITICAL (6). The MTR's health status is
considered CRITICAL if the number of available primary active logs is equal to 1. If the LOGN exception
is reported again in the next monitor interval, a second rule in the automation table sets the MTR's health
status to FATAL (7), which triggers an application move because normal recovery handling doesn't
seem to work anymore. In addition, an alert is sent to the operator to inform him about this situation. If
the LOGN exception is no longer reported, the MTR's health status is set to NORMAL (3).
The health status assigned to the MTR by means of the automation table is propagated to the DB2
application that owns this MTR. Thus, you can see at a glance whether the DB2 subsystem is okay or not.
Recommendations
You should consider the following recommendations when using OMEGAMON in combination with
monitor resources:
• Avoid monitoring multiple exceptions using INGMTRAP. Note that there can be more than one exception
that may trip and thus multiple ING080I messages may be generated. The monitor resource's health
status, however, depends on the last ING080I message.
• Avoid setting different health statuses for the same exception that is monitored by different monitor
resources using INGMTRAP. Note that only one automation table entry is generated by SA z/OS to
process message ING080I for such an exception.
In these cases, the use of INGOMX, invoked from an installation-written monitor command, to determine
a combined health status from multiple exceptions or to determine an individual health status for each
monitor resource, is preferred to using INGMTRAP.
Overview
Unlike the exception-based monitoring that SA z/OS uses for classic OMEGAMON monitors, the IBM
Monitoring infrastructure provides the means to react to situations whenever they occur. On the Tivoli
Enterprise Portal (TEP), a user can specify what kind of automated response (reflex automation) should
be triggered for each individual situation.
SA z/OS makes use of this capability by providing a simple command called INGSIT. The ITM
administrator enters this command on the TEP with the Situation Editor dialog for those situations where
SA z/OS health monitoring or health-based automation should take place. For more details about INGSIT
refer to IBM Z System Automation Programmer's Reference.
The Take Action command is carried out on the agent, for example, OMEGAMON XE for z/OS, and not
the Tivoli Enterprise Monitoring Server (TEMS) unless the TEMS is running on the same system. This
is because it is possible that the hub TEMS may not reside on z/OS and so the command may not be
delivered.
INGSIT triggers message ING150I that allows you to set the health status of individual monitor
resources. It is then possible to issue commands, such as recovery or notification commands, to
automatically fix the situation. You can specify what the health status is and what associated commands
are issued in the customization dialog.
Procedure
To set up the monitor resources for OMEGAMON XE Situations:
1. Define one MTR for each OMEGAMON XE situation that you want to respond to.
2. In the MONITOR INFO policy item fill in the following fields:
Monitored Object
Enter the name of the OMEGAMON XE situation in uppercase with a prefix of ITM, for example,
ITM.MYSIT
Monitored Jobname
Enter an optional job name to match this situation to a particular monitor resource.
3. Define codes for the message ID ING150I in the MESSAGE/USER DATA policy of the MTR to yield the
commands that are to be issued and to map the severity to a valid health status.
Example Scenario
Consider the following scenario:
The PAGEADD command is to be issued when an auxiliary storage shortage is detected, based
on page data set utilization and page data sets that are not operational.
A situation called MyAuxShortage_Warn is defined by the installation that is true when both predefined
situations OS390_Local_PageDS_PctFull_Warn and OS390_PageDSNotOperational_Warn are true.
As reflex automation, the following system command is issued on the managed system, that is, the
system that produced the situations:
F NETV,INGSIT MyAuxShortage_Warn,warn
INGSIT is called and produces an ING150I message, which contains the situation name that is mapped to
the monitored object. Other optional information includes:
• The severity of the situation
• A job name that matches this situation to a particular monitor resource
• Other data that contains information related to the event
In this example, the situation, MyAuxShortage_Warn, and its severity, warn, are included.
Using the customization dialog, a monitor resource, for example, AUXSHORT, is created that specifies
ITM.MYAUXSHORTAGE_WARN (in uppercase) as its monitored object.
ING150I is then specified in the MESSAGE/USER DATA policy item of the AUXSHORT monitor resource. In
this example, the following code entry could be used to derive selection ADD and set the health status to
MINOR:
In addition, one or more commands can be specified for ING150I for the selection that resulted from
code match processing. In the example above, the PAGEADD command would be specified for selection
ADD.
After executing all the commands that have been specified in the Command Processing panel for the
selection, the health status that was mapped in the code processing is set (in this example, it was
MINOR). Note that if no health status was specified in the code match table, it remains unchanged.
In a more sophisticated extension of this scenario, the situation, MyAuxShortage_Warn, as shown on
the TEP is automatically acknowledged using SOAP services. To do this, a small request parameter
XML-document must be created and sent to the TEMS SOAP server for processing. To acknowledge a
situation, a CT_Acknowledge request must be issued as shown in the following example:
<CT_Acknowledge>
<target>KEYAS:CMS</target>
<name>MyAuxShortage_Warn</name>
<source>KEYAPLEX:SYS1:MVSSYS</source>
<data>System Automation is taking care of this</data>
</CT_Acknowledge>
The XML-document above references the TEMS that manages the situation (target), the situation itself
(name), and the so-called monitoring agent (source) that is the source of this situation. With the data-
element, you can pass any additional textual information to the person that is looking into this situation
on the TEP.
As described in “OMEGAMON Interaction” on page 32, INGOMX is used to issue the SOAP request to the
TEMS SOAP server. Once the situation has been acknowledged, it can be recognized as such on the TEP's
situation event console or navigator flyover list.
Component Overview
Event-based CICS link and health monitoring is implemented using CICSPlex System Manager (CICSPlex
SM) objects. Whenever an event is received from CICSPlex SM, message ING150I is issued.
INGCPSM is the event listener for CICSPlex SM. Because it is a long-running automation procedure it
needs to be run in a virtual operator station task (VOST). It scans the configuration on startup and listens
for events. It then periodically checks whether the configuration has changed (that is, monitor resources
have been added, deleted, or changed, etc.) or monitor resources are waiting for initial monitoring (that is,
they have STATUS=ACTIVE and HEALTH=UNKNOWN).
Procedure
To set up the monitor resources:
1. Define one MTR for each CPSM object (for example, each connection).
2. Fill in the Monitored Object field in the MONITOR INFO policy item according to the naming
conventions, for example, CPSM.CICS1TOR.CONNECT.CON1
Results
Refer to the *CICS add-on policy for sample definitions to monitor the connection between two CICS
resources.
Issue one recovery command every minute. The commands are read from the JES3 SPOOLSHORT
CMDS policy of the JES3 subsystem. When the spool usage goes down to 60% or less, the health
status goes to NORMAL. This causes the invocation of the AOFRJ3RC command but now with the
RESET option - the RESET option stops recovery. It is recommended that you use JESOPER as the
auto-operator for the recovery commands. Note, that the recovery commands for the SPOOLSHORT
condition must be defined for the JES3 subsystem.
5. For the JES3 subsystem, define the necessary actions that should be performed for SPOOLSHORT in
the JES3 SPOOLSHORT CMDS policy:
This purges all jobs from the hold queue that are older than 30 days in the first pass. On pass 2, all jobs
older than 10 days are purged. On pass 3 all jobs older than 3 days are purged. Finally, after 10 times
the pass interval (in our example 5 minutes), all jobs older than 1 day are deleted if the recovery action
is not reset in the meantime.
AOFRJ3MN Routine
Use this routine to monitor various objects in a JES3 environment.
The following objects can be monitored:
• MDS queues (Fetch queue, Verify queue, Wait volume queue, Error queue, Allocation queue, Breakdown
queue, Unavailable queue, Restart queue, System select queue, System verify queue)
• Current setup depth
• Spool space
For each of the 10 JES3 MDS queues, thresholds may be set for each of the 4 health statuses (Warning,
Minor, Critical and Fatal) indicating the number of jobs that particular queue may contain causing to set
the corresponding health status. If, for example, the WARNING threshold for the Error queue is set to 5, if
5 or more jobs are pending on the MDS Error queue, the health status is set to Warning.
For the spool space the thresholds define the amount of used space that when exceeded causes to set
the corresponding health status.
Whenever AOFRJ3MN is called, it issues the appropriate JES3 command (*I,Q,S for SPOOLSHORT and
*I,S for the MDS queues) and parses the response. The value extracted from the message text is
compared with the thresholds and then the return code is set to the corresponding health status. This
simply sets the health status of the Monitor resource (MTR). No recovery action is taken by AOFRJ3MN
routine. Use the HEALTHSTATE policy of the Monitor resource to define a recovery action for each health
status, if necessary.
The syntax of the AOFRJ3MN routine is as follows:
object
MDSCOUNTQ
MDSCOUNTF
MDSCOUNTV
MDSCOUNTW
MDSCOUNTE
MDSCOUNTA
MDSCOUNTB
MDSCOUNTU
MDSCOUNTR
MDSCOUNTSS
MDSCOUNTSV
SPOOLSHORT
threshold-list
warning ,minor ,critical ,fatal
jes3apl
Specifies the name of an APL of category JES3 for which this monitor works.
monitor
Specifies the JES3 object to be monitored:
MDSCOUNTQ
Current setup depth
MDSCOUNTF
Fetch queue
MDSCOUNTV
Verify queue
MDSCOUNTW
Wait volume queue
MDSCOUNTE
Error queue
MDSCOUNTA
Allocation queue
MDSCOUNTB
Breakdown queue
MDSCOUNTU
Unavailable queue
MDSCOUNTR
restart queue
MDSCOUNTSS
System select queue
MDSCOUNTSV
System verify queue
SPOOLSHORT
Spool
threshold-list
Specifies a list of four threshold values separated by commas:
warning
Set health status to WARNING if this value is exceeded
minor
Set health status to MINOR if this value is exceeded
critical
Set health status to CRITICAL if this value is exceeded
fatal
Set health status to FATAL if this value is exceeded
If warning is not exceeded the health status is set to NORMAL.
Note that for SPOOLSHORT the values are in percent but for the MDS queues they are absolute
numbers. No value checking is done by AOFRJ3MN except for whole numbers.
Note also that the thresholds are tested from FATAL to WARNING. So if you want to go directly from
NORMAL to FATAL, you could specify 50,50,50,50
AOFRJ3RC Routine
This routine performs the recovery action against a monitored object in a JES3 environment.
When AOFRJ3RC is called, it checks whether the system that it is running that holds the JES3 global
processor. If not AOFRJ3RC terminates without any further action.
The syntax of the AOFRJ3RC routine is as follows:
RESET
jes3apl
Specifies the name of an APL of category JES3.
msg-type
Specifies the message type within the given JES3 APL that the recovery commands are to be read
from:
pass-interval
Specifies the time interval that AOFRJ3RC should wait before executing the next pass. The format
is in NetView notation ( mm, hh:mm, hh:mm:ss or :ss).
RESET
If RESET is specified AOFRJ3RC stops the recovery.
AOFRJ3RC looks into the MESSAGE/USER DATA policy definition of the specified JES3 APL. It issues
the command that is defined for PASS1 of the given message type. As long as there are commands in
higher passes it sets up a NetView timer that re-calls AOFRJ3RC after the given pass interval. Whenever
AOFRJ3RC is executed the command that is defined for the next pass is issued as long as one exists.
If RESET is specified instead of a pass interval any pending timer is killed and processing stops.
The return code is always zero.
Note: AOFRJ3RC issues the recovery commands in a fire-and-forget manner. It does not check whether
the recovery action has the desired result. This is done by the monitor. After one or more monitor
intervals the health status changes to a less severe one if the recovery shows an effect. If you want
to stop recovery actions when the health status returns to NORMAL, for example, you have to code a
HEALTHSTATE command that calls AOFRJ3RC with RESET.
Overview
Job Log Monitoring is designed to monitor JES spool files only. The current implementation supports any
JES spool output file regardless of whether the job is executing or the job has finished. However, in the
latter case the output must still be available on the JES output queue and the user has to ensure that the
output is processed only once.
To use joblog monitoring, NetView must have a JES job ID. If the user enables the DSIRQJOB task,
the JES job ID can be obtained by starting the DSIRQJOB. If the user disables the DSIRQJOB task, the
INGTJLM task will automatically acquire a JES job ID as needed when joblog monitoring is started. Before
any attempted shutdowns of JES in both cases, the user must ensure that the job ID is released by
stopping either the DSIRQJOB or INGTJLM task, whichever they have employed (refer to the best practice
policies for SA's recommended approach). Alternatively, refer to Starting the NetView Program Before
Starting JES topic in the NetView Installation: Getting Started manual. This topic explains how to use the
NetView MVS Command Revision function to stop the DSIRQJOB job when JES ends abnormally or is
stopped by a user from the command line.
The monitoring function is controlled by SA z/OS based on the definitions of the customization dialog.
Monitoring is automatically started when the job reaches a status of UP, ACTIVE, or RUNNING. If your
job was already active at the time you specified the Job Log Monitoring definitions in the customization
dialogs, then this job must be restarted in order to start Job Log Monitoring for it. However, you can
monitor jobs that are not controlled by SA z/OS with the following restrictions:
1. You cannot specify any filter criteria to limit the data that is passed to automation. This means any line
of data except an empty line that is generally excluded is forwarded to the message automation.
2. The message that is forwarded to message automation is always queued to the autotask LOGOPER.
For SA z/OS controlled jobs those messages are queued to the autotask that is responsible for the job
in view of SA z/OS.
3. You need to start the monitoring manually by using the command INGJLM START. Required
parameters are the job name and the monitoring interval. In case you want to monitor a data set
other than the default data set JESMSGLG you also need to specify the appropriate ddname. The
specifications of the owner or the job ID are necessary only when multiple jobs with the same job
name exist. This could be the case when the job already ended and the output is held on the output
queue. In this case, it is your responsibility that the job is monitored only once.
4. You need to qualify the ddname by the step name if you do not want to monitor a spool file of the last
step in a multi-step job when the ddname is specified multiple times. In case the step name is not
unique in an in-stream procedure you need to qualify the ddname by the procedure step name as well.
You can stop the monitoring function for a particular job at any time using the command INGJLM
STOP even for SA z/OS controlled jobs. Normally, the monitoring is automatically stopped when the
job has ended. For SA z/OS controlled jobs this is done when the job reaches a termination status like
AUTOTERM, ENDING, and so on. For non-SA z/OS controlled jobs the monitoring is automatically stopped
when the job has ended and the monitoring interval has expired twice.
The monitoring task can be suspended for an indefinite time frame using the command INGJLM
SUSPEND. The accumulated output of all monitored jobs is processed not before the task has been
restarted. The output of jobs that have finished in the meantime is lost unless the output is still held on
the JES output queue. Jobs that have been started after the task was suspended will not be monitored
after the task has been restarted. To restart the task, use the NetView command START TASK=INGTJLM.
The monitoring task can be instructed to continue its monitoring after NetView has been recycled. To do
so, issue the command INGJLM RECYCLE RESUME at any time when the task is active. Note that you need
Limitations
1. Executing SA z/OS controlled jobs that are running less than two seconds are probably not monitored.
One reason is that the automation does not find the job active any longer. Or, JES has deallocated
the resource before the monitoring task could allocate it. The latter case is also true for non-SA z/OS
controlled jobs when the output is not held on the JES output queue after the job ended. In any case,
specify a message class when starting the job that leaves the output on the JES output queue and
trigger the monitoring manually.
2. The monitoring function is limited to the primary subsystems JES2 and JES3.
3. Dynamically allocated spool output data sets are not supported.
4. When the NetView task DSIRQJOB is defined, Job Log Monitoring waits for receiving the JES job ID by
DSIRQJOB. Without the job ID, a spool data set cannot be accessed. If DSIRQJOB is not defined, the
job ID is obtained by Job Log Monitoring and returned to JES when the monitoring task terminates.
If DSIRQJOB is terminated in a JES2 environment, the monitoring task is automatically suspended
because the job ID is returned to JES2. And the monitoring task is automatically restarted after
DSIRQJOB is restarted.
In a JES3 environment, DSIRQJOB does not return the job ID on termination. For this reason, the
monitoring task is not terminated. However, if for whatever reason the job ID is returned to JES3, the
monitoring task is automatically suspended but needs to be restarted manually when a new job ID is
received.
Customization
For SA z/OS controlled jobs, you have to define the monitoring interval, the messages and data sets
to be monitored for each job in the customization dialog. The main definition that actually initiates the
Figure 7. ISPF dialog defining the Job Log Monitoring for an application
Dedicated messages that should be automated must be defined by specifying the offset of the message
ID within a single line and optionally one or more tokens making the message unique. An offset value
of 0 indicates a message without a particular ID. In this case at least one token pair must be defined to
identify the message. In case all messages are relevant and should be automated the common message
ID value JOBLOGALL is to be specified. This ID does not require any further user data specification.
However, the dialog will not generate an ACF fragment unless the message ID has attached any of the
definitions "S", "C", "R", "K", or "U". For this reason, the user data keyword/value pair JLM_OFFSET=NO is
required.
Figure 8. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (1/3)
Figure 9. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (2/3)
When specific messages should be monitored, the keyword JLM_OFFSET must define the actual offset of
the message ID in the corresponding SYSOUT data set. For the JESMSGLG data set, the offset of all text
begins at a specific column:
JES2 environment
The text begins at column 20 regardless of whether it is a multi-line message or the message text is
wrapped because it is longer than 126 characters (including the 19-byte prefix). Follow-on lines of a
multi-line message show the console ID of the multi-line message at column 4. Wrapped message text
shows blanks in the first 19 columns. Thus, trapping tokens of such messages requires the knowledge
of the exact position of each token. The first two tokens of the first line of each message are the time
and the job ID.
JES3 environment
The text begins at column 12 regardless of whether it is a multi-line message or the message text is
wrapped because it is longer than 126 characters (including the 11-byte prefix). The first token of each
message is always the time.
In case you want to monitor data sets other than the JESMSGLG data set you need to qualify your
message definition(s). The following sample shows you that the SYSOUT data sets referenced by the
ddname AAAZOUT and SYSPRINT pass every message to automation.
Figure 11. ISPF dialog defining the Job Log Monitoring of specific messages
The next example shows you the monitoring definitions of a multi-step job. All messages of the job steps
STEP1 and STEP3 that are written to the ddname SYSPRINT are passed to automation. But, messages of
STEP2 written to SYSPRINT are ignored.
Figure 12. ISPF dialog defining the Job Log Monitoring of specific messages of a multi-step job
The following example shows you how to define a filter criteria that is not associated with a message.
You still need to define a "dummy" message ID as an anchor. All lines of the sysout data set defined by
ddname AAAZOUT whose first token has the value ’Name’ are passed to automation.
Figure 13. ISPF dialog defining the Job Log Monitoring of a non-message print line (1/2)
Figure 14. ISPF dialog defining the Job Log Monitoring of a non-message print line (2/2)
The build process will automatically generate the following common MAT entry for automating the
message INGY1300I but only for SA z/OS controlled jobs:
Figure 15. Common MAT entry for message INGY1300I and jobs defining a message ID for monitoring
This just needs the definition of the command(s) that should be executed on behalf of the message ID, for
example:
Figure 16. ISPF dialog defining the Job Log Monitoring of all JESMSGLG messages (3/3)
Note that the message INGY1300I is a multi-line message. The first line is the label line that provides the
following tokens OWNER, JOBNAME, JOBID, DDNAME, MSGID in the sequence as shown. The latter token
is exactly the message ID that you have specified on the 'Message Processing' dialog. Each subsequent
line represents a line of the original message.
If you want to monitor jobs that are not defined in the policy or that are defined in the policy but do not
have a message ID defined for monitoring you need to manually adjust the existing, predefined AT entry
(create an AT override) like the following:
Figure 17. Common MAT entry for message INGY1300I and jobs without defining a message ID for
monitoring
In both cases, you have to start the monitoring manually. And, since no filter criteria are defined all
messages are passed to automation.
Note: When you use the NetView PIPE stage SAFE for retrieving the message, you will find the message in
the default safe.
$D JOBCLASS(STC),LOG
must show the value YES for the parameter LOG. In a JES3 environment the command
*I,STD
must now show the value NOSTC for the parameter JESMSG. And, the command
*I,C=x
must not show the value NOLOG for the parameter JESMSG where 'x' is the class that is assigned to the
started task jobs.
When Job Log Monitoring detects that a particular data set has been spun off by JES it issues the message
INGY1333I after it has finished its processing of the data set. The message informs you that the particular
spool data can be released now. For example, the job name or the job identifier along with the SYSOUT
identifier of the message can be used to purge the data set:
JES2: $P O JQ(jnm|jid),OUTGRP=soid
JES3: *F,U,J=jnm|jid,DSN=...soid,CANCEL
Note that 'jid' is just the numerical part of the job identifier.
If the SYSOUT identifier is not present in the message the task could not determine the value.
The message INGY1306I indicates that monitoring has been stopped for a particular ddname and all
corresponding spool data sets can be released.
Status Information
The command INGJLM STATUS which can also be issued in a NetView PIPE returns the current status of
the monitoring task and its monitored data sets:
Overview
The alert-based notification service of SA z/OS allows alerts to be sent to operators or system
programmers for predefined situations.
You can also customize when to issue alerts, if desired, using the customization dialog and the INGALERT
utility. Alerts can only be issued for applications (APL), monitor resources (MTR), application groups
(APG), and MVS components.
An alert is a set of information that is collected and sent by an SA z/OS automation agent to a target for
notification processing. The information that is sent consists of the text that is to be forwarded to the
alerted person or group. This information is supplemented by additional options that determine in detail
the processing at the different kinds of notification targets.
In SA z/OS there are several predefined alert points that trigger alerts whenever a command encounters a
problem situation, such as a resource becoming degraded or not being up within a given time interval.
Alerting can be enabled or disabled at various levels:
• Globally using the INGCNTL command
• Resource-specific using the resource's Inform List
• Alert-specific using code definitions for the message ID INGALERT
Communication Flow
Figure 19 on page 56 outlines the communication between the automation manager and the automation
agents.
The automation agents on the systems in the sysplex subscribe to the automation manager to be alerted
about problems with system or sysplex application groups (APGs). This is because the automation
manager cannot itself send alerts to the notification targets. Whenever the automation manager detects a
problem with an APG it sends an alert to the subscribed automation agents (one in case of a system APG,
and all in case of a sysplex APG). Any alerts for sysplex APGs are handled by only one automation agent in
the sysplex.
The automation agents can also receive alerts for applications, application groups, or monitor resources
via the INGALERT command. If the affected resource is managed by a different automation agent, the
request is passed on. The automation agent that manages the resource sends the alert to the notification
target. If, for whatever reason, this automation agent cannot send the alert, it passes on the request to
the next automation agent in the sysplex. This can happen several times until the alert is successfully sent
or no more automation agents are available.
For each alert, the automation agent connects to a notification target, sends the alert and then
disconnects. The automation agent does not maintain a permanent connection to the SA IOM server.
Enabling Alerting
By default alerting is not enabled. To activate it you must perform setup actions in both SA z/OS and
notification target.
Setup in SA z/OS
You can turn alerting on or off at three different levels in SA z/OS:
• The system level, via the INGCNTL command. Turning off alerting means that no alerts are detected or
accepted by the system. Alerting must be turned on explicitly either globally or selectively for at least
one notification target.
• The resource level, via the Inform List policy field. Turning off alerting means that no alerts are detected
or accepted for the resource. The notification target must be explicitly specified (or inherited from the
defaults) to activate alerting for it.
• The alert ID level, via code definitions for the INGALERT message ID of the resource or MVS component
entry.
INGCNTL Command
By default alerting is not enabled. You have to issue the INGCNTL command to enable it and set the
connection properties for the notification target.
This can be done as follows:
• In the NetView style sheet using auxiliary commands:
**********************************
* Auxiliary commands
**********************************
* Enable Alerting and set connection properties
auxInitCmd.A = INGCNTL SET ALERTMODE=IOM ALERTHOST=saiom:1040:SAALERT
See IBM Z System Automation Programmer's Reference for more information about the INGCNTL
command.
Inform List
You have to include the appropriate communication method for the notification target in the Inform
List field of the appropriate policy item to explicitly enable alerting for specific resources or classes of
resources, as shown in Table 7 on page 57.
You must also specify the appropriate communication method for the desired notification target as shown
in Table 8 on page 57.
You can specify a blank-separated list of values to enable alerting for several notification targets.
Code Processing
Code processing with the INGALERT message ID allows you to define additional characteristics for events
to be passed to the notification target or to prevent event creation for certain alerts. Such definition can
be made, dependent on the alert ID, issuing job and type of notification target.
Code definitions for message ID INGALERT can be used for resources of type APL, APG, MTR, and for
MVS components. If no matching code definitions are found for the APL, APG or MTR resources, the
INGALERT code definitions are checked for the corresponding MVS component entry on the system where
the resource resides.
Enter the following in the Code Processing panel for the INGALERT message ID:
Code 1
The alert ID that identifies the type of alert. SA z/OS provides the following set of built-in alert points:
Note: Alert points ISQHWMSG and ISQHWST are provided by Processor Operations for target
hardware connected over SNMP protocol.
You can also use any user-defined alert ID. Simply specify it in the corresponding code entry and call
INGALERT with this ID. Wildcards are supported.
Code 2
For APL this is the job name that alerting should be done for. For MVC it contains MVSESA. For APG
and MTR Code 2 is ignored. Wildcards are supported. This allows you to set alerting for several APLs
at once by using APL classes.
Code 3
The communication method that is used to send the alert to the notification target. Valid values are
IOM, EIF, TTT or USR. Wildcards are supported.
Value Returned
This can be either IGNORE to prevent event creation, or parameters that are sent to the notification
target together with the passed event. The meaning of these parameters depends on the type of
communication method, as follows:
IOM
The first two tokens of the Value Returned are considered to be:
• The priority of the alert (0–999).
• The escalation ID that is used in SA IOM to define the rules that determine how the alert should
be processed. The length of this value is limited to 20 characters.
If the first two tokens have invalid values, the Value Returned is assumed to be IGNORE.
If you specify more than two tokens in the Value Returned field, the superfluous tokens are
ignored.
EIF
The Value Returned is considered to be the event severity. Valid values are HARMLESS, WARNING,
MINOR, CRITICAL or FATAL, or a corresponding number between 1 and 5, where 1 corresponds
to HARMLESS, etc. Both alternatives for specifying a severity can be used for events to TEC or
NETCOOL/OMNIbus. When specifying the severity as a number, the code definition can also be
used to send alerts to SA IOM.
If you do not specify a valid severity, the Value Returned is assumed to be IGNORE.
Superfluous tokens in the Value Returned field are ignored.
TTT
If TSRM is the notification target, the values in Value Returned are used as:
• The priority of the trouble ticket as it is initially reported (1-5)
• The urgency, which is a indication of how quickly a trouble ticket should be resolved (1-5)
• The business impact or severity of the trouble ticket (1-5)
These values are not validated because other targets may expect other values.
If you specify more than three tokens in the Value Returned field, the superfluous tokens are
ignored. If you specify less than three tokens, they are used according to their position and the
missing tokens default to N/A.
USR
The content of the Value Returned field is passed to the user-defined alert handler that is called.
INGALERT Command
You can use the INGALERT command to inject alerts into a system. This can be from either the NetView
automation table, an automation procedure, or the command line.
You can specify the following parameters:
• A resource name , the text MVSESA, or a job or subsystem name.
• The alert ID, for example, CS_PROBLEM, CMD_FAILED, and so on.
• A message ID that identifies the message text or a text string that is passed to the notification target.
For example, the following can be used from the command line or an automation procedure:
In this example, INGALERT uses the alert ID, MYALERT, to obtain additional parameters via a matching
code definition for the message ID INGALERT, and it uses the TEXT parameter value for the alert text.
The following can be used from the NetView automation table to send an alert whenever message
ABC123I is issued:
IF MSGID=’ABC123I’
THEN
EXEC(CMD(’INGALERT’));
INGALERT uses ABC123I as the alert ID and the complete text of message ABC123I as the alert text. The
resource parameter of INGALERT is defaulted to the job name of the subsystem that issued the message.
See IBM Z System Automation Programmer's Reference for more information about the INGALERT utility.
Overview
SA z/OS collects and records job-related information, and writes System Management Facility (SMF)
records at specific events in the lifetime of a resource.
This resource can be:
• A subsystem (APL)
• An application group (APG) that is hosted by the local system as well as sysplex application groups
• A monitor resource (MTR)
The INGPUSMF batch utility produces a report file that you can import into a spreadsheet. You can also
convert and write the report into DB2 tables that are provided and exploited by the IBM Tivoli System
Automation Application Manager. For more details, see “Writing the SMF Report to DB2” on page 66.
You can control whether a record is written for a resource by entering the value SMF in the Inform List
field in the resource's information policy item.
Resource Lifecycle
Figure 20 on page 61 shows the events in the lifetime of an application when SA z/OS records
information.
34 2 — Reserved.
36 12 EBCDIC Automation agent status (optional).
48 12 EBCDIC Start type.
60 12 EBCDIC Stop type.
72 5 EBCDIC Termination type (abend code). Optional.
77 3 — Reserved.
80 4 Binary Total startup time in seconds.
84 4 Binary Elapsed time in seconds that the resource was active.
88 4 Binary Total shutdown time in seconds.
92 4 Binary Last down time of resource in seconds.
SYS(TYPE(30,...,114)
2. Specify SMF in the Inform List of the APPLICATION INFO policy item for the resource.
Output
The first record in the data set is a title record that describes each column. The remaining records are the
data records. One data record is written for each type 114 SMF record.
Table 11 on page 64 describes the format of each record.
User Options
You can specify various options in the USRPARMS data set that control the processing of the utility. You
must specify each option in a separate record. The option are defined as keyword=value pairs. If you
specify an option several times, the last occurrence is used. The keyword must start in column 1 of the
record. No blanks are allowed in front of or after the equal sign (=). A asterisk (*) is considered to be a
comment.
The following options are supported:
SEPCHAR=char
Defines the separator character to be used to separate the columns. The default is a semicolon (;) if
omitted
SYSID
Defines the SMF system ID used as a filter. Only SMF records that are generated by that system are
taken. The value can be 1–4 characters.
FROM=date
The starting date used as a filter. The format is YYYYMMDD. All SMF records written on the specified
date or later are taken.
TO=date
The ending date used as a filter. The format is YYYYMMDD All SMF records that are written no later
than the specified date are taken.
RESOURCE=
Defines the resources in automation manager notation used as a filter. You can specify up to 10
resource names. The name can be a wildcard, such as *abc, abc* or *abc*.
Return Codes
The following return codes are set by the utility:
0
Normal completion.
8
Invalid option detected in the USRPARMS data set.
12
REPORT data set is not accessible.
16
A severe error occurred, for example, an open error for the SMFDATA data set, or writing a record to
the REPORT file.
You can use the sample job INGXRPRT to run the z/OS offloader.
Customization
Procedure
After installing the z/OS offloader you must carry out the following customization steps:
1. Customize the script /usr/lpp/ing/adapter/ingreport.sh. Adapt the installation path:
INSTALL_DIR=/usr/lpp/ing/adapter
2. Copy the sample job INGXRPRT and follow the steps as described in it.
There are several input parameters that you need to set correctly otherwise the conversion utility
cannot access the DB2 table:
Parameter Details
INGDSN=HLQ.SMF.REPORT The data set of the SMF report created by the INGPUSMF
utility.
INGSEPCHAR=; This must be the separator as used by the INGPUSMF utility.
INGDOMAIN=MyDomain The name of the E2E domain as specified in the E2E adapter
configuration file, ing.adapter.plugin.properties. If omitted the
default is used, which consists of the sysplex name and XCF
group name.
Parameter Details
INGDB2_USER=db2inst1 The DB2 user name for remote logon.
INGDB2_PSW=db2admin The DB2 password for remote logon.
INGDB2_PORT=50000 The TCP/IP port to connect to the remote DB2.
INGDB2_SERVER=db2-host-name The TCP/IP host name to connect to the remote DB2.
INGDB2_NAME=EAUTODB The DB2 name or the DB2 location if DB2 resides on z/OS.
INGDB2_SCHEMA=EAUTOUSR The DB2 schema of the table.
3. (Optional) If the database is located on a z/OS system, a DB2 license file is required. An appropriate
license file for z/OS platform, db2jcc_licencse_*.jar must be installed in the application classpath.
Connectivity to z/OS databases is enabled with the license file as defined by the following table.
Output
The output of the ingreport.sh shell script shows the progress of the z/OS offloader. Any errors that
occur are reported in this output. See IBM Z System Automation Messages and Codes for details of these
messages (INGX9850E, INGX9855E, and INGX9856E).
Concept
You can use the SA z/OS standard interface and routines to handle system external messages in almost
the same way as system internally generated messages. This applies to the way of defining message
e. If you do not want the proxy resource, and hence the processor operations target system, to be
automatically started at IPL, set the Restart after IPL option to NO.
3. Because you can automate applications only by linking them to systems via an application group
(APG), you need to define an application group for the proxy applications. Choose an APG of Type
SYSTEM and Nature BASIC, with a Behavior of PASSIVE and leave the Automation Name empty to
avoid that a resource is created for this group. Also, do not merge the proxy applications with other
applications into this application group because destructive requests applied to a merged application
group would also affect the proxy resources contained in that group.
4. In the Message Processing panel for the proxy application, define the messages to be automated in the
Message ID column. Do not specify message ID ISQ900I, as this message is used as a carrier for the
original target system message.
Enter cmd in the Action column to specify the command to be processed if the defined message
occurs.
5. If the message to be automated is a WTOR, the variable &EHKVAR1 contains the reply ID. This variable
may then be used as a parameter to the ISQSEND command:
• Stop example:
Note: If the delay time between sending the commands in pass 1 and pass 2 is not appropriate, you can
define a resource-specific Shut Delay in the Application Automation Definition panel.
For more details about processor operations commands refer to IBM Z System Automation Operator's
Commands.
The addressed REXX command environment, Netvasis, passes the command string without doing an
uppercase translation. The ISQSEND command internally translates its destination parameters into
MYLINUX and OC but leaves command whoami as is.
Security Considerations
After Linux system initialization, usually a LOGIN prompt message is displayed allowing users defined to
the system to login. The ISQSEND command interface does not suppress any password data from being
displayed.
You may use the NetView LOG suppression character to avoid the password information to be visible in
the NetView log. In Support Element log files, such password data can be viewed in text form.
This message format applies to all processor operations target system messages. It is independent of the
target system resource that generated the original message.
The processor operations target system message is sent in the same format as it would be displayed on
the processor Support Element (SE) or Hardware Management Console (HMC).
Specifics of VM second level systems: Messages from guest machine operating system appear in the
following format:
Note: Make sure your consoles issue messages in the format that you expect and write your NetView
automation table entries accordingly.
This NetView automation table statement initiates the ISQI101 routine when the message condition is
true.
Note: Text within messages may be in mixed case. Be sure your coding accounts for mixed case text.
Message ISQ211I
Some SA z/OS commands attempt to lock and unlock ports. Where an operator owns the lock for a port,
the SA z/OS unlock command, ISQXUNL, returns RC=12 associated with message ISQ211I Unable to
unlock target name console.
In such a case, you have the choice of either using the ISQOVRD command to force an unlock or you may
end your automation with a message. Thereafter, you can view your NetView log to find out the reason for
the lock of the port.
Your automation may encounter this message ISQ211I frequently. Attempting to unlock a locked port is
not an error condition; however, it may be a sign that the calling command did not succeed. Schedule your
automation from messages that indicate positively that a command did not run, not from the ISQ211I
message.
The SA z/OS automation table entries in the ISQMSG0 member of the SINGPARM data set include inactive
entries that call these automation routines. To incorporate these routines into your automation, do the
following:
1. Remove the comments from the corresponding automation table entries for the messages that initiate
the automation routines you want to use. If you perform these steps as part of the initial SA z/OS
installation, make these changes before you incorporate the SA z/OS entries. If you do this after the
initial SA z/OS installation, change the NetView automation table.
2. Code the routines you are using to issue the responses you want.
3. Compile the PL/I source code for the routines you want to use, and link the resulting object code to
your PL/I library.
4. Recycle the NetView program to activate the new entries.
For automation processing to occur, each message in the NetView automation table at the focal point
system and at each target system must be made available to the system's NetView program. In
z/OS, MPF controls message availability to the NetView program. Examine the MPF list member in the
SYS1.PARMLIB data set to ensure that the necessary messages are marked for automation. For target
systems using other operating systems, check the message suppression facilities used on those systems.
Testing Messages
SA z/OS provides a collection of NetView automation table entries for your SA z/OS configuration.
NetView automation table entries are in the AOFCMD member of the SA z/OS SINGPARM installation
data set. When these entries are moved to your NetView automation table, they may need additional
editing.
For example, you may already test for a particular message in your production NetView automation table.
If you add an entry that tests for that same message, your automation table will not run as you expect.
After a match with the test criteria is found, the search of the automation table is aborted. The second
NetView automation table statement is not found. Consequently, the message does not drive all of your
required actions.
To avoid this, combine entries into a single test condition. This ensures that all required actions are
scheduled for all messages. For the following message:
your NetView automation table may already have the following entry: ( 1 )
IF MSGID = 'IEA320A'
THEN EXEC (CMD('USERJOB') ROUTE( ONE *) ) CONINUE(Y);
With SA z/OS installed, the following message appears when forwarded from System z or 390-CMOS
processor hardware:
After the SA z/OS entries are added, the NetView automation table includes the following entry:
In this case, the first entry satisfies the IF test and the command USERJOB runs ( 1 ). The second
command, ISQI320, is not scheduled to run because once the message matches a table entry, the
autotask stops searching. Combine these two entries into a single entry, such as:
When you use the second example, both commands are scheduled.
If your NetView automation table tests the text of SA z/OS messages, the message format must match the
character case for which you test. This can be done by requiring all sites to use the same format for their
messages, or by duplicating AT entries in uppercase and in mixed formats.
SET MPF=xx
Where xx is the suffix of the MPF member in the SYS1.PARMLIB data set to load.
To reload the automation manager configuration file, all updated automation control files and the
automation tables issue:
INGAMS REFRESH
Specify a data set name or an asterisk (*) which means reload the current data set.
In the example above, the HW common command GETSINFO was issued at a NetView console.
Embedded in the ‘ISQ’ messages the response from the hardware is displayed on the console, starting at
report ID AOFA0017.
The same information is available if you reference the PIPE KEEP with the name ISQ.SNMP, once the
ISQCCMD command completed, as shown in the example, with the content of ISQ.SNMP displayed on the
console.
In an automation procedure, this can be coded as shown in the following example:
/*ReXX*/
/* Display CPC information using the ISQ.SNMP KEEP */
Arg cpcname
‘ISQCCMD ‘cpcname’ GETSINFO’
If RC = 0 Then Do
‘PIPE KEEP ISQ.SNMP ‘ ,
‘ | LOC /AOFA0017/ ‘ ,
‘ | LOC /’cpcname’/’ ,
‘ | CONS ONLY’
End
As an alternative, you can get the immediate ISQCCMD HW responses directly into the PIPE input stream
if you use the PIPE NETVIEW stage followed by an EXPOSE TOTRAP stage. In this case, all ISQ messages
and the AOFA0017 report data is available for PIPE processing.
/*ReXX*/
/* Display CPC information in a PIPE */
Arg cpcname
‘PIPE NETV ISQCCMD ‘cpcname’ GETSINFO‘ ,
‘ | EXPOSE TOTRAP ‘ ,
‘ | LOC /ISQ90/ , /* takes ISQ901I or ISQ900I */
‘ | LOC /AOFA0017/ ,
‘ | LOC /’cpcname’/’ ,
‘ | CONS ONLY’
may either indicate successful execution or a failure. The asynchronous command completion events
from the hardware are made available for message automation and TRAP AND WAIT processing by
ProcOps. Application scripts using the ISQCCMD interface can get the Accepted or Rejected responses
directly at ISQCCMD termination time. The Accepted response can then be used to wait for the command
completion event message.
Member INGEI004 of the SINGSAMP library provides a REXX sample illustrating how asynchronous
hardware commands can be automated using ISQCCMD and NetView PIPES, together with TRAP and
WAIT.
To ensure that RUN ON state is set, a CP SET RUN ON command is sent to all MVS guest machines at the
time when the guest machine is started by the PSM.
Once MCS operation is established, important messages requiring operator action are directed to the
guest machine. Again, these are analogous to the stream of messages directed to the OSM window of
the HMC. Initially, commands cannot be entered to MVS. To do so, it is necessary to enter "Problem
Determination Mode". To enter this mode, a VARY CONSOLE(*),ACTIVATE command must be entered.
Once this is done:
• All MVS messages that are displayed are routed to the guest machine
• Commands may be entered using the CP VINPUT command.
Problem Determination is not generally recommended.
To enter LINUX commands it is normally necessary to log on to LINUX. This requires a user ID and
a password. So, to provide for LINUX commands would require the specification of a user ID and a
password to ProcOps, with all the attendant difficulties in the area of security. At present the LINUX
system is considered IPL COMPLETE when specified messages have appeared. These do not require a
user logon.
VM machines may also be guest machines. Third level guest machines are not supported.
VSE machines may also be guest machines.
LINUX
The LINUX target system should have in its VM Directory entry, a CONSOLE statement that sets its PSM as
its default secondary user. For example, if the virtual machine LNXAO1 is controlled by a PSM running in
virtual machine ISQPSM1, then its CONSOLE statement might be:
When a LINUX target system is to be deactivated a FORCE command is used to shut it. The default
guest signal timeout interval values (set by the SET SIGNAL command) and values defined for the guest
machine determine the interval used when allowing the LINUX system to shut in an orderly fashion. If this
function is required for a guest, you must ensure that this is set accordingly.
Such actions may include updating the etc/inittab entry on the LINUX system itself, and setting up a
SHUTTRAP module on the VM host.
MVS
This should have a CONSOLE statement in its VM directory entry that defines its PSM as its secondary
user:
It should also IPL a CMS system as its initial action. Once this CMS system is IPLed it should run a
PROFILE EXEC that includes the statements similar to the following:
SET RUN ON
DETACH 01F
IPL 7700
The SET RUN ON is needed so that when a response is to be sent to a NIP console the VINPUT command
used is effective.
The DETACH is used so that when the MVS system IPLs it finds none of its defined 3270 consoles
available to it. (You should also ensure that no user issues a VM DIAL to an address that is defined as a
NIP or MCS console.)
CONSOLE DEVNUM(SYSCONS)
ROUTCODE(ALL)
AUTH(MASTER)
MSCOPE(*)
CMDSYS(*)
UD(Y)
VM
This should have a CONSOLE statement in its VM directory entry that defines its PSM as its secondary
user:
It should also IPL a CMS system as its initial action. Once this CMS system is IPLed it should run a
PROFILE EXEC that includes the statements similar to the following:
SET RUN ON
DETACH 01F
IPL 7700
The SET RUN ON is needed so that when a response is to be sent to a console the VINPUT command used
is effective.
The DETACH is used so that when the VM system IPLs it finds none of its defined 3270 consoles available
to it. (You should also ensure that no user issues a VM DIAL to an address that is defined as a Operator
Console)
The IPL command is used to IPL the VM system.
The VM system itself should include within its OPERATOR_CONSOLES statement in the SYSTEM CONFIG
file (which resides on the "parm disk") a specification for the emulated system console, for example:
This ensures that when VM IPLs and finds no regular consoles available, it then uses the emulated system
console. This in turn directs the messages to the secondary user as a stream of line-mode messages.
VSE
This should have a CONSOLE statement in its VM directory entry that defines its PSM as its secondary
user:
It should also IPL a CMS system as its initial action. Once this CMS system is IPLed it should run a
PROFILE EXEC that includes the statements similar to the following:
The TERM CONMODE 3215 command sets the console into line mode.
the SA z/OS online help for detailed information about ISQCCMD, the GETRAW common command, and
the supported parameters.
Use the following information to find the object attribute information to set up your queries. It is
recommended that you have a basic understanding of SNMP MIB variables and object IDs.
Member INGEI007 in the SA z/OS sample library illustrates with several ISQCCMD GETRAW calls how this
programming interface can be used with REXX. Various attributes are retrieved in the samples.
The IBM Z CPC and CPC image MIB variables with their object IDs and suffixes are all documented in
the IBM Z SNMP Application Programming Interfaces (SB10-7171-xx) publication, available from IBM
Resource Link.
List of supported suffixes for attributes in Chapter 3. Console application APIs > Data exchange
ascending order APIs and commands API structures and definitions >
Constant definitions.
Detailed object descriptions for the GETRAW Chapter 4. Console application managed objects >
supported CPC and CPC image (LPAR) objects, Defined CPC
including the data types returned
Chapter 4. Console application managed objects >
CPC image
Infrastructure Overview
The z/OS UNIX resources that should be automated must run in the z/OS UNIX of a z/OS system that
is already automated by SA z/OS. From the automation manager's perspective the NetView agent of this
system is responsible for the z/OS UNIX resources.
For command execution through INGUSS or user-defined monitoring, a z/OS UNIX program (provided
by SA z/OS) is directly invoked by SA z/OS. This program (ingccmd) executes UNIX commands and runs
when started by SA z/OS with the jobname INGCUNIX. The ingccmd program is the extension of the
NetView-based agent into z/OS UNIX. To monitor the standard z/OS UNIX resources (processes, ports, or
files) an internal SA z/OS routine is started.
Process initialization and termination status updates of USS resources are directly reported from system
exits to the SA z/OS environment by the program-to-program interface INGUXPPI. A NetView task with
the same name immediately posts the UP or DOWN status. The automation agent recognizes and then
sets the correct automation status for the resource.
For this functionality, the NetView Subsystem Interface (SSI) is required. For a correct customization of
the SSI, refer to Step 5 in the chapter "Installing SA z/OS on Host Systems" in IBM Z System Automation
Planning and Installation.
When monitoring of the USS process indicates that it is down, its status is updated to AUTODOWN.
However, because it may take some time before a USS process has ended (that is, to clean up the
resources that is had acquired), monitoring is repeated after a cleanup delay. If you define your own
USS processes, you should specify a suitable cleanup delay using the APPLICATION INFO policy item.
Consider using an application class if you need to define several processes.
The start and stop definitions can be varied between MVS and z/OS UNIX commands. For example, to
stop an application you can issue a UNIX kill command first and (if this was not successful) you can
perform an MVS cancel later.
12
Error occurred
If the user-specified monitoring routine loops, it receives a SIGKILL after the AOFUSSWAIT time (defined
in the NetView stylesheet).
Hint: It is possible to write a message from this UNIX monitoring routine to the MVS system log, in order
to trigger an action or perform a status change through the NetView Automation Table (AT).
The monitoring routine AOFUXMON must be specified, otherwise the default monitoring routine (usually
INGPJMON) is called, which is not sufficient for z/OS UNIX resources.
The Job Type field can be either MVS or NONMVS:
MVS
Is only used for resources that represent a process with a unique jobname. For these resources
SA z/OS accepts the following messages for status changes:
• IEF403I Job started
• IEF404I Job ended
• IEF450I Job abended
If no start command is specified, the default MVS start method (s <JOBNAME>) is used.
NONMVS
SA z/OS ignores the messages listed above for status changes. This is necessary if the job name is not
unique.
For z/OS UNIX resources the Start Delay interval that has been defined begins when SA z/OS issues a
start command for an application. SA z/OS is informed by z/OS that the resource that is to be monitored
has started. This results in the USS resource being set in the status ACTIVE. After the first start delay
interval and successful monitoring, the ACTIVMSG comand is triggered, which sets the agent status to UP.
The default value for the Start Timeout is 2 minutes.
If you set the Skip ACTIVE status field in the APPLICATION INFO policy item to YES, the resource is
immediately set to UP when SA z/OS is informed by z/OS that the process is running.
For application shutdown, SA z/OS is informed by z/OS as soon as the process has ended. At this point,
SA z/OS immediately sets the resource into the AUTODOWN status.
As a result of this behavior you should carefully consider how you set the following parameters in the
APPLICATION INFO policy item, either for the application or at the class level:
• Start Delay
• Start Cycles
• Skip ACTIVE status
• Shutdown Pass Interval
• Cleanup Delay
For more information, see the *USS best practices policy.
Automated Resources
Process Monitoring
No UNIX process identifiers (PIDs) can be monitored. The monitoring routine needs the start command
and the user ID that the process belongs to. This information can be obtained with the UNIX command
ps.
In the following example all processes that belong to the user USER are displayed:
USER:/u/user/ingcmd>ps -e
PID COMMAND
33554481 /bin/sh
50331698 /usr/sbin/rlogind2
33554486 /usr/lpp/netview/bin/cnmeunix
67108927 /bin/sh
83886176 /bin/ps
33554821 /usr/sbin/inetd
83886472 FTPD
67109276 /bin/sh
16777629 /usr/sbin/rlogind2
33554924 HSAPYTCP
This means that automation could not distinguish between the two processes started by /usr/sbin/
rlogind2. Processes started by identical commands must have different user IDs.
Alternative 1
If it is necessary to automate processes running multiple instances, a user could use softlinks to
distinguish between the different processes. For example, the process:
/u/user/usstest/testme
should be started more than once. In this case, create some softlinks:
USER:/u/user/usstest>ls -al
total 216
drwxrwxr-x 2 USER DE#03243 8192 Jan 24 16:24 .
drwxr-xr-x 19 USER DE#03243 8192 Jan 24 16:23 ..
lrwxrwxrwx 1 USER DE#03243 6 Jan 24 16:24 test1 -> testme
lrwxrwxrwx 1 USER DE#03243 6 Jan 24 16:24 test2 -> testme
-rwxrwxr-x 1 USER DE#03243 94208 Jan 24 16:23 testme
These three programs (being the same "real" program) can be automated with the three different start
commands test1, test2, and testme. These links may be created as a prestart command and deleted as a
shutfinal command.
Note: Only the command is used, not the parameters that were used to start the program. This is
because a program may be started by SA z/OS with different startup parameters, depending on what
the automation manager told the automation agent to do. In this case, the only constant value is the
command, not the parameters.
Alternative 2
The same program can run in parallel several times by using different startup parameters (like Java
programs). In this case it is inefficient to automate these processes as described above. Java programs
run in a Java environment and are visible as Java processes, for example:
# ps -e
PID TTY TIME CMD
50331734 ? 5h24 .../V6R1/AP/AppServer/java/bin/java
83886173 ? 1:44 .../V6R1/AP/AppServer/java/bin/java
60341724 ? 2h36 .../V6R1/AP/AppServer/java/bin/java
73392173 ? 1:02 .../V6R1/AP/AppServer/java/bin/java
It is impossible in this case to distinguish and evaluate the process that should be monitored.
The command ps -ef shows the same processes (for example, programs running in a Java
environment), without the fully-qualified Java path but with a parameter chain that is used for startup.
#ps -ef
UID PID PPID C STIME TTY TIME CMD
EEZDMN 50331734 1 - Jun 27 ? 5h25 java -Djava.util.logging.configureByServer=true
EEZDMN 83886173 1 - Jun 27 ? 1:44 java -Dcom.ibm.eez.adapter.debug=true
EEZDMN 60341724 1 - Jun 27 ? 2h36 java -Djava.util.logging.manager=connect
EEZDMN 73392173 1 - Jun 27 ? 1:02 java -Djava.security.auth.login.config=/etc/security.conf
Mapping the output of both commands using the matching PID, a unique process can be evaluated and
monitored. The process that is distinguished is then:
/SYSTEM/local/WebSphere/V6R1/AP/AppServer/java/bin/java
-Djava.util.logging.configureByServer=true
Where the data that is specified in the UNIX Control Specification panel in the Process Command/Path
field is /SYSTEM/local/WebSphere/V6R1/AP/AppServer/java/bin/java and in the with Filter
field is the filter -Djava.util.logging.configureByServer=true.
If the USS program has the sticky bit set, the MVS load is performed using the symbolic link name.
For example, running two instances of syslogd requires the usage of a symbolic link, for example, /tmp/
syslogd. A separate /tmp directory must be used so that the same name (syslogd) can be created.
Note: INGUSS can be used only if the primary JES is available. Therefore, z/OS UNIX resources using
INGUSS need a HASPARENT dependency to JES. Most z/OS UNIX applications have this dependency. If
you want to issue prestart commands, an additional PREPAVAILABLE dependency is necessary.
If you want to switch the start of your USS related subsystems from a BPXBATCH based started task
to an INGUSS command call, the appropriate INGUSS command patterns vary for different cases. For
BPXBATCH related considerations, see INGUSS command in IBM Z System Automation Programmer's
Reference.
Command Examples
Start Command for a Process
To start a process with the command and job name specified in the customization dialogs, enter INGUSS
JOBNAME=&SUBSJOB &SUBSPATH &SUBSFILTER in the Command Text field on the Startup Command
Processing panel of the STARTUP policy item of the resource.
Only the command that was used to start an application or a process can be monitored. If the same
program is to be started multiple times, a softlink as prestart command could be used to distinguish the
processes.
Use a Softlink to Distinguish Processes That Run the Same Executable File as a Prestart Command
To create a softlink for &SUBSPATH (the path parameter of the resource issuing the command, for
example, /u/user1/uss1) and link to the file /u/user1/usstest, enter the following command in the
Command Text field on the PRESTART Command Processing panel:
USER1:/u/user1>ls -l
total 408
lrwxrwxrwx 1 USER1 DE#03243 7 Feb 13 12:44 uss1 -> usstest
-rwxrwxr-x 1 USER1 DE#03243 163840 Jan 29 14:55 usstest
Example: sshd
The Secure Shell Daemon application (SSH daemon or sshd) is the daemon program for ssh. This program
is an alternative to rlogin and rsh and provides encrypted communications between two untrusted hosts
over an insecure network. The sshd is the daemon that listens for connections from clients on port 22.
It is normally started when z/OS UNIX is initialized. It forks a new process for each incoming connection.
The forked processes/connections handle key exchange, encryption, authentication, command execution,
and data exchange. These connections show the same jobname and Command/Path and Filter as the SSH
daemon does. At sshd startup time its process ID (pid) is written in the /var/run/sshd.pid file.
Any adaptation and configuration changes to the sshd can be done in the sshd configuration file
sshd_config. It is located in the /etc/ssh directory.
Keeping the Secure Shell Daemon application (sshd) highly available requires that the sshd will not be
detached from its parent process. Additionally, the sshd must be started in a separate shell environment.
This shell is needed to establish a unique process which can be monitored. It can be accomplished by
starting the sshd with option -D
For shutdown purposes it is required that the process ID file (sshd.pid) is written to your file system. This
process ID will be read from that file and used to identify the sshd to terminate.
The ps -ef command supplies further parameters to identify the process referenced as Filter , for
example:
Process 83886553 represents the address space containing the covering parent shell process for
monitoring purposes. Process 83887096 is the sshd itself.
From this output, set the Filter as -c '/usr/sbin/sshd -D' .
Note: Even though the quotation marks are not shown in the output for the command ps -ef, they must
not be defined in the Filter field of the USS Control policy.
To check for the required information for the Command/Path issue the ps -e command and look for the
process Id of the parent shell:
This shows the process ID (PID) for the sshd monitoring process. From this output, set the Command/
Path as /bin/sh
Next find out the z/OS user ID that the process is running on by issuing the following z/OS command and
locating the user ID in the first column where the process ID (PID) is listed:
D OMVS,PID=83886553
# netstat -a
...
SSHD 00000049 Listen
Local Socket: 0.0.0.0..22
Foreign Socket: 0.0.0.0..0
…
Define a basic group containing all resources with relationships that indicate that:
• The group containing all sshd related resources depends on TCPIP
• The file is created by the sshd process and can never be started or created directly by SA z/OS
• The sshd process listening on the port can never be started or created directly by SA z/OS.
Figure 24 on page 90 illustrates the SSHD (modeled as a group) as up and running when the
process /bin/sh -c '/usr/sbin/sshd -D' started by user OMVSKERN appears, the file /var/run/
sshd.pid exists, and port 22 is in the status 'listen' (sshd listens to this port for incoming login requests).
You can only choose a port that is defined in /etc/ssh/sshd_config .
In case, the kill command does not terminate the sshd process use INGRCLUP routine to invoke a
z/OS CANCEL command against the address spaces of the sshd and the monitored parent shell.
SA z/OS provides the *USS best practices policy that provides definitions for several automated USS
daemons, such as sshd. Common definitions for USS resources can be found in the APL classes starting
with C_USS_xxx .
Use also the Unix man pages to get more information about the used USS commands and their
parameters.
*.* /dev/console
To send special messages to the MVS log only, follow the syslog message naming guidelines (for example,
for warning messages use *.warn). You can use /dev/console as an ordinary file to write to.
To test this, issue the following UNIX command from a USS console:
The UNIX messages have the MVS message ID BPXF024I and are multiline messages.
Figure 25 on page 92 shows an example of the output of the UNIX command in the system log.
M 13:45:21.34 STC03602 00000090 BPXF024I (USER) Feb 13 13:45:21 SYS1 syslogtest 67109100 : This
is
S
498
D 498 00000090 a test
message
* BPXM023I message
* This msgID is just a wrapper that is only added if the
* the process calling BPX1CCS is not running with UID=0.
* It is either a single or a multi line message.
* SA modifies the message to enable automation independent from the
* issuers authority.
*
* -- WTO request via BPX1CCS syscall - Multiline message --
* Modify message - drop first line of the multiline message
IF MSGID = 'BPXM023I' & HDRMTYPE = '"' & TOKEN(3) = ''
THEN EDIT('FWDLINE 1 1.* 1 WRITELINE COPYREST');
*
* -- WTO request via BPX1CCS syscall - Singleline message --
* Modify message - remove header from first line
IF MSGID = 'BPXM023I' & HDRMTYPE = 'E'
THEN EDIT('WORD 3.* 1 WRITELINE COPYREST');
Take the following single-line BPXM023I message for example. This message is an UP message for IBM
Common Data Provider for z Systems.
The INGMSGSA automation table statement cuts the first two words off and results in the following
message.
If you want to automate that message, then you can define the "real" message ID HBO6001I as the UP
message in SA policy.
Debugging
Debugging can be activated for z/OS UNIX monitoring and command execution on the AOCTRACE panel.
The automation procedure for monitoring is AOFUXMON and for command execution AOFRSUSS.
Turning on debugging for AOFRSUSS implicitly turns on debugging for ingccmd (the SA z/OS command
server).
The debugging messages are written to the netlog and to the z/OS UNIX system log (syslogd).
Table 16. Policy Entry Names and Types for Command Receivers
Policy Entry Name Policy Entry Type
CMDRCVR APL
CMD_RECEIVER APG
CMD_RECEIVER_AUTOOPS AOP
These SA z/OS resources ensure that the command receiver task is started at SA z/OS initialization time
and ready to receive commands. The operator is able to monitor the status of the command receiver by
using the INGLIST command.
Table 17. Sample Names and Load Modules for a TSO/Batch Environment
Sample Name Load Module name
IRXREXX1 IRXPARMS for MVS
IRXREXX2 IRXTSPRM for TSO/E
IRXREXX3 IRXISPRM for ISPF
There are various considerations for providing your own parameter modules. For details, see the
section "Function Package Table" in chapter "Language Processor Environments" of TSO REXX Reference.
The default PPI receiver identifier is INGRCRCV, but you can change it to any other name. If you
want to change it, you must specify the parameters PPI and CSAKEY=EMULATOR. The parameter
CSAKEY=EMULATOR defines the key used by the batch command interface and is used as the default key
by INGRCRPC for communicating with the command receiver. EMULATOR is the only key that is supported.
The INGRCRCV command would look like as follows, where xxxxxxxx is the PPI name of choice.
You may start more than one command receiver for use by INGRCRPC. Each additional command receiver
must have a unique PPI ID, but you must not specify CSAKEY=EMULATOR. For details on how to correlate
INGRCRPC with a specific command receiver, see “Function INGRCRPC” on page 102. For details about
multiple command receivers, see “Multiple Command Receivers” on page 97.
Be aware that the command receiver is not able to route the incoming command to one of the command
work tasks when the OPF=AOFCMDOPER parameter is missing. In this case, all incoming commands are
processed sequentially by the VOST task hosting the command receiver.
When subsystem CMDRCVR terminates, it stops the command receiver by means of INGRCRCV STOP
command.
Notice that the sample definition has escalation commands defined for the stop process. It uses the
INGVSTOP DETACH and INGVSTOP TASK commands for the stop passes. These commands stop the VOST
hosting the command receiver directly rather than terminating the command receiver gracefully.
Notes:
You should not have to start the command receiver in normal circumstances, because it should start
automatically when the SA z/OS agent registers with the automation manager.
To stop the command receiver, issue the INGREQ REQ=STOP command against the appropriate
subsystem, for example:
To see the list of VOSTs used by the command receiver(s) use the INGRCRCV QUERY command.
The display of this command shows the NetView task and PPI ID, the VOST owner and the OPF as
specified in the command receiver start command.
The VOST is used to run the command receiver if it was started via the INGVSTRT command (you can
check it in the APL's start command in the sample PDB). In this case, the VOST is the APL subsystem
name and the VOST owner is the associated work operator AUTWRKnn.
The second line shows another command receiver that was started with PPI ID INGRCVR2 via command:
AOFEXCMD MYTASK INGRCRCV START PPI=INGRCVR2 OPF=EVTOPER
This second command receiver does not run in a VOST, but runs in the task MYTASK. The command will
be scheduled to be executed by the single automated operator function EVTOPER.
line-mode-command
> DDNAME "-"
* comment
Command Continuation
Commands are continued across lines by appending a dash to the end of the command, for example:
This allows subsequent steps in the batch job or other batch jobs to use the output of the command for
their own purpose.
You can change the redirection symbol with the REDIRECT parameter of AOFRYCMD if, for example,
you use > as a command prefix. Note that the redirection symbol must not be the same as any of the
characters that occur in the command. For more details, see “AOFRYCMD Description” on page 99.
The DCB characteristics of the output DDNAME should be as follows:
LRECL=132,RECFM=FB
Or even:
AOFRYCMD Description
Purpose
AOFRYCMD is a REXX procedure that issues commands to a SA z/OS agent and receives the results of
those commands.
Note: AOFRYCMD is identical to EVJRYCMD. For an easy migration EVJRYCMD still exists in the library
SINGREXX while AOFRYCMD resides in SINGTREX. The use of AOFRYCMD is recommended.
Syntax
AOFRYCMD
wsid NOWKSTS
SERVER = EVJCMDRV
SERVER = name
TIMEOUT = 60
TIMEOUT = seconds
TIMEOUT = NONE
HIGHRC = 0
HIGHRC = return_code
Parameters
wsid
This parameter is optional.
This parameter specifies the name of the TWS workstation that submitted this batch job. This
information is used by the command to disable the workstation in the event that communications
between the batch job and the SA z/OS Agent cannot be established.
If this parameter is specified, any NetView PPI communications problem will cause the command to
issue a TWS WSSTAT command to place the workstation offline.
NOWKSTS
This parameter is optional. It is also deprecated. It is preferable to omit the workstation ID.
This parameter modifies the behavior of the command. In the event of a failure in communications to
the SA z/OS Agent, this parameter prevents the command from disabling the TWS workstation that is
defined with the wsid parameter.
SERVER
This parameter is optional.
The default for this parameter is EVJCMDRV. This parameter specifies the name of the PPI receiver
in the SA z/OS Agent NetView that commands will be sent to. Specifying SERVER=* causes the
command receiver to pass the command to one of the associated work tasks to enable parallel
processing of commands. The command receiver EVJCMDRV is deprecated but still exists for
compatability reasons.
For details on defining EVJCMDRV, refer also to the *IBMCOMP Add-on policy.
Note: When using the general purpose command receiver by coding SERVER=*, the SINGTREX library
must be added to the SYSPROC concatenation chain.
TIMEOUT
This parameter is optional.
The default for this parameter is 60 seconds.
This parameter specifies the time in seconds that the batch job will wait for a command to execute in
the SA z/OS Agent NetView. This timeout is applied separately to each command. If the timeout is set
to NONE, no timeout will be applied to the batch job.
Note: It is recommended that the INGREQ/INGMOVE/INGGROUP timeout (as defined with the FDBK
parameter) should be less than the TIMEOUT= parameter for the job.
This is because the INGREQ/INGMOVE/INGGROUP command's FDBK parameter can be used to
specify a WAIT period that will result in the command waiting until the desired status change is
complete. For example, if the TIMEOUT parameter is defaulted to 60 seconds, the INGREQ FDBK
parameter should be coded as, say, FDBK=(WAIT, :55).
HIGHRC
This parameter is optional.
The default for this parameter is 0 (zero).
This parameter specifies the highest acceptable Return Code for the job. Any return codes from
commands that are less than or equal to this value will reset the JCL Step return code to zero. Any
command return code that is greater than this value will be passed as the JCL Step return code.
Note: The JCL Step return code will be the highest return code of all the command return codes.
MAXRC
This parameter is optional.
The default for this parameter is 999.
This parameter specifies the maximum acceptable return codes from commands issued by the batch
job. If a command return code is higher than the value specified, the batch job is aborted and any
remaining commands will not be executed.
The return code that is reported to the JCL is determined by the HIGHRC parameter.
SYSIN
This parameter is optional.
The default for this parameter is SYSIN.
This parameter sets the DDNAME of the input file that contains the command to be executed.
REDIRECT
This parameter is optional.
The default for this parameter is >.
This parameter defines the redirection character. Enclose it in quotes or double-quotes if the string
contains special characters, such as the equal sign. It must not be the same as any of the characters
that occur in the command.
ASIS
This parameter is optional.
The default for this parameter is NO.
This parameter enables the submission of a required command in mixed case, to be executed as
presented, when the parameter value is YES.
Usage
When the SA z/OS Agent is started, it will automatically issue a WSSTAT command to mark the
workstation online. The specifications of which workstations to mark online at agent restart are contained
in the WORKSTATION message/user data policy for the tracker or controller. Multiple workstations may be
defined. Workstations that are assigned to trackers should have their WORKSTATION policy defined to the
same trackers that they are assigned to.
Each command is submitted in turn and the results of the command are retrieved. These results are then
written to either SYSTSPRT or to the output redirection DDNAME.
Whether or not the command completed successfully is indicated by message ING330I for satisfactory
completion or message ING332I when the command failed. Message ING332I shows the return code of
the command completion. These messages are written to SYSPRINT (//SYSTSPRT DDName).
Note: The DW0369I message that might have been requested when using the NetView PIPE command
with the MOE option or automatically injected by SA when the command completed successfully is no
longer passed along.
In this command, the PPI parameter specifies the PPI receiver ID, which must be equal to the ppi_rcv_id
parameter of INGRCRPC. The SA command receiver runs in the SA NetView Agent and uses a PPI receiver
ID to receive incoming remote procedure call (RPC) requests. Any RPC request sent by INGRCRPC will
be scheduled on a NetView task for command execution. The OPF parameter specifies the name of the
SA operator function, which is either a single task or a group of tasks, for example, AOFCMDOPER. For a
detailed description of the command receiver, see Chapter 9, “Command Receiver,” on page 95.
Note:
If you start multiple command receivers, then for each command receiver, you need a unique pair of a PPI
receiver ID and corresponding SA operator function.
Sending multiple requests via INGRCRPC concurrently is not supported from the same TSO address
space. Requests must be sent one after another.
Function INGRCRPC
The REXX function INGRCRPC provides a remote procedure call (RPC) from TSO address space to the SA
NetView Agent address space on the same z/OS system. The purpose is to execute a standard command
(such as a NetView or MVS command) or a self-written REXX program and to route back the output to the
calling TSO program.
INGRCRCP uses the specified PPI receiver ID to determine the target command receiver. INGRCRPC uses
internally a unique PPI ID to receive the response. This PPI ID is the job ID of the calling job.
Syntax
rc = INGRCRPC(command, input_data, ppi_rcv_id, taskname, resp_name, timeout,
security_ctx)
Parameters
command
The command to be executed in the SA NetView Agent.
Maximum length of the command is 31990 characters. The command must not include 'FF'X or 'FE'X.
Precede it with 'MVS' if you want to execute an MVS command. No prefix is needed for NetView or SA
commands. If it's an MVS command, INGRCRPC waits until the first output line (might be a multi-line)
is caught and timeout is not exceeded.
input_data
Optional input data. It's used for a REXX program. Omit it if you execute a standard command.
You can specify the name of a REXX stem, for example, 'input.'. This is an array of data lines which
will be provided as NetView default stem for command execution. This name must end with a dot
and input.0 must be a positive number specifying the number of input lines and input.n n=1,2,…
contains the n-th input line. For example:
input.0=2
input.1=’abc’
input.2=’xyz’
rc = INGRCRPC(‘MYREXPGM’,’input.’)
This REXX program MYREXPGM can read the input data using the NETV default SAFE.
ppi_rcv_id
Optional target PPI ID.
It is the PPI receiver ID of the command receiver. If not specified, the default INGRCRCV will be used.
See also Chapter 9, “Command Receiver,” on page 95.
A PPI receiver ID must be alphanumerical mixed case and can contain '$%&@#'. It must have a
length of 8 characters, right justified with blanks.
taskname
Optional name of the target task. The maximum length of this parameter is 8 characters.
If not specified, the command receiver decides by itself which task is to be used.
For security context AUTOTASK, the command will be executed in the specified taskname. For
security context USERTASK, the taskname is ignored and the command will be executed under the
user task.
The following rules apply to the taskname:
1. taskname is the name of an SA Automated Function with status ACTIVE. For a list of possible
names, see DISPAOPS command in IBM Z System Automation Operator's Commands.
a. If the SA Automated Function is a single SA Automated Function, for example, EVTOPER, then
the associated NetView task is selected.
b. If the taskname represents an array of SA Automated Functions, then the corresponding
NetView task will be selected from this array via “RoundRobin”.
For example, the taskname is AOFCMDOPER which represents the array (AOFCMD01,
AOFCMD02,...). The specific definitions in CGlobals include: AOFCMDOPER.0 is the number
of tasks and AOFCMDOPER.n (n=1,2,…) is the n-th SA Operator Function. So for n=1,
AOFCMDOPER.1=AOFCMD01. This array of CGlobals must have been defined before you call
INGRCRPC.
Since taskname is restricted to a length of 8 characters, the name of the CGlobal array is also
restricted to 8 characters.
2. taskname is a valid NetView AUTOTASK (for example, AUTBASE) with status ACTIVE.
3. In any other cases (for example, unknown task name or inactive task), the command will NOT be
executed and error message ING332I will be returned.
resp_name
Optional name of a REXX stem that should receive the response.
If not specified, no response is requested (fire-and-forget).
If you specify the name of a REXX stem, it must end with a dot, for example, 'output.'.
On return, output.0 contains the number of output lines and output.n (n=1,2,..) contains the n-th
output line.
timeout
Optional number of seconds that INGRCRPC waits for the response.
If not specified, 10 seconds is used.
If timeout occurs, INGRCRPC returns one of the following return codes:
Return code 2
The remote site has not written any response data into the receiver PPI queue so far. Therefore,
no response data has been received at all within specified time frame. There is no guarantee
that the command has been terminated or is still running. Also, there is no guarantee that the
command has even started running. It might still remain in the command queue of the command
receiver task and is waiting for execution.
Return code 1
Return code 1 is only possible for the security context USERTASK. The command receiver is
interrupted while waiting for asynchronous output due to timeout. Message ING331I is the only
response data provided. The command is being executed but the command execution has not
been completed within the specified period of time. The command might still run on the remote
NetView task until it is complete. But after completion, no data will be returned.
security_ctx
Optional security context specification.
AUTOTASK
The command will be executed within the security context of the SA operator function, which are
auto task(s) specified in the start parameters of the command receiver.
USERTASK
The command will be executed within the security context of the NetView operator task, which is
equal to the calling TSO user ID.
If not specified, the security context is AUTOTASK. For more details, see “Security Considerations” on
page 107.
Return Codes
0
The command has been executed (either successfully or unsuccessfully) and the command response
could be transferred back to the TSO caller. For more details, see “Response Data” on page 105.
1
Timeout on NetView site (only provided with USERTASK).
2
Timeout on TSO site.
4
Missing or invalid input parameter.
See message INGPC012I, which tells you the failing function parameter. Check description of the
failing function parameter for correct usage.
8
Error while writing into response stem.
The REXX stem name might be incorrect or an internal error occurred with INGPCREX.
9
Error while reading from input data stem.
The reason might be that the stem element input_data.0 does not contain a whole number; the
REXX stem name is incorrect; or an internal error occurred with INGPCREX.
16
Error using the NetView PPI API.
For example, writing into a PPI queue failed or DSIPHONE OPEN, CLOSE or READ failed.
For more details, see accompanied message INGPC010I or INGPC011I.
17
Security error.
The TSO user has no access to the SAF profile that protects the usage of this function. For more
details, see “Security Considerations” on page 107.
20
Internal error. REXX script error. For example, REXX Syntax error or NOVALUE condition
24
Internal error. Invalid response data stream.
25
Internal error. Cannot decode response data stream.
28
Internal error. Initialization failed.
32
Internal error. Cannot obtain system information.
Response Data
The input command will be executed on the NetView task via a PIPE command.
If the command is a REXX program, you can use the REXX instruction SAY or NetView command PIPE
CONS ONLY to write response data.
The command output will be collected automatically and returned to the calling TSO program using the
stem ‘resp.’. Only if the return code is zero, you can get back the response of the command execution.
RC=INGRCRPC(cmd,,,,’resp.’)
resp.0 Number of output lines from the command execution plus one for the info
message.
resp.1 Always one of the following info messages ING330I, ING331I or ING332I
resp.n, n=2,3,... All output lines collected from the command execution.
Subsequent response lines (resp.n, n=2,3…) might contain the output data written by the command.
In this case, it is very likely that the response contains additional error messages that describes the
reason of the command execution failure.
RC=1, Connection to Command Execution Task has been Interrupted.
If the return code is 1, then resp.1 always contains message ING331I.
No further command response was received due to the connection interruption to the command
handler.
RC=2, Connection to Command Execution Task timed out.
If the return code is 2, then there is no response at all because the connection timed out. Therefore,
no response can be received.
If function INGRCRPC sends the command to the target task, then message ING335I will be written to
NETLOG before the command is executed. For example:
ING335I Execute remote command on behalf of JOB=BDOW USER=BDOW OPER=AUTCMD03
CLIST=TESTRPC COMMAND=TECHO
For a full description of these messages, see these messages in IBM Z System Automation Messages and
Codes.
Examples
Usage Example
• Send the NetView command RES to the default receiver INGRCRCV. Wait up to 10 seconds, which is the
default. Receive and display the command output.
rc = INGRCRPC('RES',,,,’out.’)
if (rc=0) then
do i=1 to out.0
say out.i
end
• Send the command INGLIST to a different command receiver with PPI ID PPIQNAME, which will
execute the command within the security context USERTASK. Wait up to 30 seconds for response.
rc = INGRCRPC('INGLIST OUTMODE=LINE',,’PPIQNAME’,’USERTASK’,’out.’,30)
• Send MVS command D A,BDOW* to the default receiver INGRCRCV. Wait up to 30 seconds for response
on the TSO side but stop MVS command execution until the first multi-line message was received.
rc = INGRCRPC('MVS D A,BDOW*',,,,’out.’,30)
Programming Example
• This example invokes the MYREXPGM command via RPC and displays the output.
/*REXX*/
context='AUTOTASK' /*auto task security context*/
• The following self-written command MYREXPGM receives the input data and returns it as output data:
/*REXX MYREXPGM*/
SAY 'MYREXPGM STARTED'
ADDRESS NETVASIS,
'PIPE SAFE *',
'| STEM SAFE.'
/*SAY may be used to return response data */
SAY 'MYREXPGM SAFE.0='safe.0
do i=1 to safe.0
say 'OUTPUT('i'):' safe.i
end
SAY 'MYREXPGM ENDED'
EXIT
Security Considerations
Both the usage of TSO function INGRCRPC and the execution of the command in the corresponding
NetView task are subject to security checking.
USERTASK
Note: If the SAF profiles do not exist, access is granted per default.
For example, if the TSO user BOB wants to execute the MYCMD command, the following permission is
needed:
In addition, the autotask (for example, AUTCMDnn) must be allowed to execute the command. The
following permission is needed:
USERTASK
The use of the security context USERTASK is subject to NetView command security.
NetView provides different flavors of command security. If you choose CMDAUTH=SAF in the NetView
security settings, then NetView performs SAF checking for command security and the TSO user BOB
needs the following permission:
These SA resources ensure that the RDS archive task makes the RDS table persistent. The advantage is
to start or stop archiving easily. Error situations reflected by error messages such as VSAM IO error could
also be trapped in the message table and associated with the SA resource. The resource status might
become broken indicating a severe error.
After importing the RDS_ARCHIVER and RDSARCH, the SA z/OS customization dialog defines an APG
resource group that includes an APL resource RDSARCH. It provides the function to start or stop RDS
archiving. Using INGTIMER as a PRESTART and REFRESHSTART command, the RDS archiving command
will be scheduled on the automated function AOFRDSAR periodically every nn seconds. See “Regular
Snapshot” on page 110.
After importing RDS_AUTOOPS the SA customization dialog defines the corresponding automated
functions AOFRDSAR and AOFRDSEV. Note that the names of the NetView Automation Operators must
match those that you define in member ING.SINGPRM(AOFOPFSO). You may customize this sample to
your needs. By default the following mapping is used:
Regular Snapshot
By default, the RDS archiving resource RDSARCH issues the command "INGVALUE ARCHIVE" every 30
seconds. It runs on the automated function AOFRDSAR. Archiving and restoring must run always on the
same task. Make sure that the RDS archiving works well and periodically performs the backup of RDS
tables.
RDS Initialization
During SA z/OS initialization the persistent RDS tables are restored into memory, if the VSAM file with DD
INGEMUGL exists.
If this status of the RDS initialization is not OK then the following message may appear:
ING388I Function or command INGRCVAC failed, RC=36 REASON=ARCHIVE rejected INIT STATUS=xxxx
If xxxx is a NULL string then the initialization of RDS was not performed.
INGRCRDX CKINST
If you set up RDS for TSO successfully the command output should look similar to:
sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssN
Truncation warning. The data you are editing is variable length data with at e
least one record that ends with a blank. Saving the data will result in e
removal of any trailing blanks from all records. You can issue the PRESERVE e
ON command if you don't want the blanks removed. e
sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssm
AOF_AAO_RDS_TSO_DSN=HLQ.RDS.WORK
The data set name HLQ.RDS.WORK is customizable. You may create a PDS with a name of its own.
Sample of a PDS characteristics with maximum records length of 1000 if the total sum of all columns
definition of a table is smaller 1000 bytes:
Organization . . . : PO
Record format . . . : VB
Record length . . . : 1000
Block size . . . . : 32000
Data set name type : PDS
It retrieves the table mytab and displays it using the ISPF editor.
It retrieves the table mytab and displays it using the ISPF editor. You may change the table. Please
observe the rules of column specifications as described below. Changes to the table will be saved in a
temporary file and imported to the RDS table mytab. A table lock is obtained until the table is saved or
quit.
The following rules apply:
1. Respect the column length and keep one blank between each column.
2. For an existing table you should not delete columns or insert new columns because you cannot
overwrite column definitions.
3. For a table that does not exist yet: After you modified the table name in line 1 and saved the table
you can delete, insert and rename columns. Make sure that the numbers in parenthesis match the
column width. The new table name must not exist. If the new table name exists already the old column
definitions are used.
Sysplex Functions
The following functions are described:
• “Managing Couple Data Sets” on page 113
• “Managing the System Logger” on page 114
• “Managing Coupling Facilities” on page 115
• “Recovery Actions” on page 116
• “Hardware Validation” on page 123
• During initialization, SA z/OS checks that an alternate CDS is specified for every primary CDS. If there is
a primary CDS for which no alternate CDS exists, SA z/OS automatically creates it.
• At runtime, SA z/OS ensures that a new alternate is created whenever the current alternate has been
removed or switched to the primary one.
Customization
Recovery of alternate CDSs is initiated either by the CDS function of INGPLEX or in the background (for
example, at initialization time). Background recovery can be switched on and off by using the SA z/OS
customization dialogs. Automatic re-creation with INGPLEX CDS is always enabled.
You must specify the spare volumes that SA z/OS may use for creating missing alternate CDSs (using
the policy item SYSPLEX from the Policy Selection panel for sysplex groups). This is also required for
automatic creation with INGPLEX CDS. Every CDS type has its own pool of spare volumes. Note that if you
do not define spare volumes for a CDS type, no recovery is performed for this type. For details on the use
of the customization dialogs, see “Enabling Continuous Availability of Couple Data Sets” on page 125.
You can control access to those functions of INGPLEX CDS that modify the sysplex configuration. Refer to
the "Security and Authorization" chapter of IBM Z System Automation Planning and Installation for details.
Customization
Automation of system logger recovery is enabled through the SA z/OS customization dialogs. For more
details, see “System Log Failure Recovery” on page 168.
manipulate structures and the CFs themselves. For more information, see IBM Z System Automation
Operator's Commands and the online help.
Some functions deal with the sender paths of a coupling facility. They have the following limitations. First,
at least one system in the sysplex that is running the automation must know the control unit ID (CUID) of
the coupling facility. If this is not the case, no missing sender paths can be resolved.
A missing sender path occurs when a coupling facility is deactivated prior to a system IPL (or reIPL) and
then activated afterwards. The system that has been IPLed (or reIPLed) does not recognize the coupling
facility. To determine the missing sender paths, the automation calls the HOM interface of HCD. Resolving
the missing path information is only possible when either the complete network address is defined in HCD
along with the processor ID, or you provide the CPC synonym used by the automation as the processor ID.
However, it is recommended that you define both. If neither is defined, the system that misses the sender
paths must run the automation.
Recovery Actions
Vary the active console (COND=A) offline. For SMCS consoles, issue the
appropriate VTAM command. V
{CN(x),OFFLINE
|
NET,TERM,LU1=x,
TYPE=FORCE
}
Cancel the job or TSO user that caused the shortage, but only when
defined as a candidate during customization. C {jobnm,A=asid
|U=userid
}
IEA406I Resume the console if it was suspended and if it is not a SMCS console. V CN(x),ONLINE
Restore the console attributes.
Set the deletion mode to the value before the buffer shortage occurred. K S,DEL=old,L=x
Set the interval between message rolls to the value before the buffer K S,RTME=old,L=x
shortage occurred.
Set the list from which the console is to receive unsolicited messages to V
the list before the buffer shortage occurred. CN(x),MSCOPE=(l)
Increase the WTO message buffer size to minimize future shortages as K M,MLIM=new
follows:
IEA231A Cancel all jobs and TSO users that have outstanding WTORs and that are
defined as candidates during the customization. C {jobnm,A=asid
|U=userid
}
IEA232I Issue the message AOF928 for irreversible changes (RMAX). Issue the
message AOF929 for permanent changes (RLIM).
Automation examines ENQ contention associated with command processing and builds a list of blockers
and waiters. The SA z/OS policy is then examined to see how long waiting commands and waiting jobs are
allowed to wait before automated action is taken. The policy is also examined to determine what action
(DUMP, NODUMP, KEEP or exclude) is to be taken against the blocking command or job, as follows:
1. When a command inhibits other commands from completing and no policy definitions exist for any of
the waiting commands, no automated action is taken.
2. When a command inhibits jobs from completing and no policy definitions exist for the blocking
command, no automated action is taken.
3. When a job inhibits commands from completing and no policy definitions exist for any of the waiting
commands, no automated action is taken.
If long-running ENQ and hung command recovery detect that the same resource requires automated
action at the same time, the hung command recovery policy definitions take precedence and hung
command recovery automates the resource.
The action taken (DUMP, NODUMP, KEEP or exclude) is identical to the long-running ENQ recovery action.
In either case only commands that are waiting on blocked resources are considered. "Hung" command
recovery only considers those resources that are not being monitored by long-running ENQ recovery.
If long-running ENQ recovery is disabled then all resources, even those defined as long-running ENQ
resources, are considered for "hung" command recovery. It is also important to realize that if long-running
ENQ recovery is enabled and a generic "catchall" resource definition applies, then "hung" command
recovery cannot occur, because long-running ENQ recovery always take precedence.
Commands are executed by the master and console address spaces. Thus when a resource blocker is
from either of these address spaces it is considered to be a blocking command rather than a blocking job.
As with resources, you can make similar definitions for commands that determine how long a command is
permitted to lock a resource while other commands are waiting for the resource.
If the resource blocker is a job then recovery actions are only taken when the job has blocked the
command for 3 consecutive iterations of "hung" command recovery processing. This results in a job
blocking a command for no more than 90 to <120 seconds.
Recovery action for the blocking job or the job that issued the blocking command is the same as that
specified for long-running ENQ recovery automation.
ING924E. The latter message is repeatedly issued approximately every minute until the waiting queue
becomes empty.
The threshold is calculated by subtracting the number of jobs that are issuing commands in the command
class from the total number of TCBs (50) that are reserved for command processing. This prevents jobs
that repeatedly issue few commands from being evaluated.
The recovery ends when the message IEE061I is issued.
Note: The dump definitions are not in effect if a dump should be taken when the job is canceled. This is
because the recovery routine of the job that is being canceled can suppress the dump.
Customization
Automation of handling long-running enqueues is enabled through the SA z/OS customization dialogs. For
more details, see “Enabling Long Running Enqueues (ENQs)” on page 128.
Customization
Automation of message IXC102A is enabled through the SA z/OS customization dialogs. For more details,
see “Step 4: Automating IXC102A and IXC402D Messages” on page 127.
IRA203E Save the jobname of the very first message only. Next, check if the job
IRA204E has been defined for cancellation. Finally, schedule a timer to pop up AT hh:mm:ss
IRA210E 10 seconds later than the timer INGT742P. If this timer does not exist, ID=INGT742J
use the current time.
IRA202I Delete any pending recovery action.
IRA262I MVS D
ASM,LOCAL
PURGE
TIMER=INGT742P
PURGE
TIMER=INGT742J
PURGE
TIMER=INGT742S
IRA250I Determine whether SCM offline storage is available. If no more storage MVS D M=SCM
can be added, the recovery is terminated with RSN=0, but will continue
when IRA200E is issued.
Add 'increment size' of SCM storage. CF SCM(incr),ON
If CF SCM was successful schedule a timer for adding more SCM
storage in case this action was insufficient. Otherwise the recovery is AFTER 00:00:10,
terminated with RSN=28 ID INGT742S
IEE205I Mark the page data set ‘free’ if it is a spare data set.
PAGE n/a Repeats the recovery of messages IRA200E, IRA205I, IRA260E and
IRA265I after the timer INGT742P has expired.
PAGECRIT n/a Repeats the recovery of messages IRA201E after the timer INGT742P
has expired.
SCM n/a Repeats the recovery of message IRA250I after the timer INGT742S
has expired.
Hardware Validation
This function performs cross-validation of the hardware configuration mapped out in the customization
dialogs against the actual hardware configuration that is running. This information is critical to accurately
control logical partitions (LPARs) on any supported CPC within the HMC/SE LAN over the BCP Internal
Interface.
Hardware validation uses the CPC name, Partition name and Partition number to ensure that the LPARs
defined in the customization dialogs are on the correct CPC and located on the correct partition number.
However, this helps only for coupling facilities because their partition identifiers must be defined in the
active CFRM policy.
For MVS images, information from the HMC/SE (such as system name and sysplex name that are
stored during initialization) is used to verify the corresponding customization dialog definitions. During
initialization of the automation's Hardware Command Interface and just before a disruptive request is
sent to a partition, new checks are made to ensure that everything matches correctly.
Note: Only active images can be verified. For inactive images we must still rely on definitions made in the
customization dialogs.
An active system in this context is a system belonging to the same sysplex as the system that runs the
hardware validation, that is SA z/OS checks only systems and coupling facilities within its own sysplex.
Hardware validation runs on an SA z/OS system primarily during startup, and subsequently when changes
to the definition in the customization dialogs are applied through the INGAMS REFRESH command. The
validation checks the definitions of all registered systems, that is whenever an SA z/OS system performs
the hardware validation, it validates all systems and coupling facilities that are active in the sysplex at this
point in time. Registered systems are systems running SA z/OS that have joined the same XCF group.
The validation of active systems and coupling facilities requires that the CPCs that host the active systems
must all be defined in the customization dialogs.
The data for inactive systems cannot be verified. However, these definitions are checked for consistency
across all registered systems. As soon as one of these inactive systems or coupling facilities joins the
sysplex or is made available for use, the validation is run for the particular image only.
Retrieving actual hardware information can take up to 5 minutes per CPC depending on the model and its
LPARs. During the time that the hardware validation takes place all other hardware-related automation is
either delayed or cannot be performed, depending on the type of recovery. For this reason the validation
carries out "delta" processing. That is validating only the data that has changed. This also includes
the absence of data resulting in terminating CPC connections when CPC definitions are missing that
have been applied by a prior validation. The actions resulting from the validation are performed on ALL
registered systems. This has two advantages:
• you don't need to recycle NetView for changes in hardware definitions.
• you only need to make the changes available to one system.
The first part of the hardware validation triggered by the ACF command or the automation startup
determines what CPC connections must be terminated and initiated, namely in this sequence. The
resulting actions are performed on all registered systems. When this step has been completed
successfully the image validation is performed.
The image validation collects actual hardware information, and verifies the current hardware definitions
against the actual data and the definitions found on all other registered systems. It informs you if:
• A real system or coupling facility could not be validated because either actual hardware information or
user definitions are not available
• The image definitions could not be evaluated because the actual hardware information is not available
• The real system or coupling facility is not active and the image definitions of some of the registered
systems are different
• Any definition value has been corrected that was improperly defined or not defined at all
Changes in hardware definitions can be made available to all registered systems by simply invoking the
command INGAMS REFRESH on only one of the these systems. There is one exception: the change of
the authorization token value used for the communication with a particular CPC. A change of this value
requires 3 steps:
1. In the first step you must remove the particular CPC definition and then invoke the ACF command as
above.
2. When the command completes successfully the next step is to change the authorization token value of
the CPC at the Support Element.
3. The final step is to define the CPC again with the new token value and invoke the ACF command again.
Note: This behavior of the INGAMS command applies to the hardware definitions only.
The second part of the validation is triggered by either the message IXC517I that is issued when a
coupling facility is made available for use, or by the automation itself when notified that a system joined
the sysplex. Both trigger the automation to perform only the validation of the new system or coupling
facility. Multiple occurrences of messages for the same system or coupling facility are ignored while this
system or coupling facility is validated. In case of a new system, the advantage here is that the real
hardware is validated before the system starts NetView and the automation. If this automation then
detects no difference between its current definitions and the definitions of the other registered systems
—which is the normal case—only a consistency check takes place. This check does not require any real
hardware information.
Prerequisites
Note: Hardware validation is not supported on MVS systems running under z/VM.
For more information, refer to the online help or the section "More about Policy Item LPARS AND
SYSTEMS" in IBM Z System Automation Defining Automation Policy .
In the customization dialog you define the potential alternate couple data sets using the Group entry type.
Select a sysplex group, then select its policy item SYSPLEX (define sysplex policy) from the panel Policy
Selection.
The Sysplex Policy Definition panel is displayed if you select policy item SYSPLEX from the Policy
Selection panel for sysplex groups.
For a description of this panel refer to the online help or the section "More About Policy Item SYSPLEX" in
IBM Z System Automation Defining Automation Policy .
To set up the default behavior for all jobs not explicitly defined, a specification of CODE1=* and CODE2=*
is needed. To indicate that all other jobs might be canceled specify CANCEL in the Value Returned field,
otherwise specify KEEP.
The job name *MASTER* cannot be entered in the Code 1 field. Even if your default behavior is set up to
cancel all jobs that have not been explicitly defined, a cancel command is not issued against *MASTER* if
it is the job name being checked. This is because *MASTER* is non-cancelable.
Hint: If you want to use the IXC102A automation, make sure there is no processor operation related
IXC102A automation defined in your automation policy. Likewise, if you want to continue to use the
processor operations based automation of messages IXC102A and IXC402D, the IXC102A automation
flag must be disabled.
P
Specifies the profile to be used. The name can consist of up to 16 alphanumeric characters. If the
parameter is omitted, the last used profile is taken.
Note: The following restriction applies to the hardware commands ACTIVATE and LOAD:
Both commands invoke processor functions that can cause asynchronous events such as operator
messages at BCP (Basic Control Program) Internal Interface initialization time or processor hardware
wait states. Currently, the BCP Internal Interface does not allow the monitoring and control of these
events.
Use policy item MESSAGES/USER DATA of the SA z/OS customization dialog within the application type
IMAGE you created to define commands and codes for message IXC102A and IXC402D. Enter C or
S in the Cmd column and IXC102A in the Message ID column (or IXC402D for IXC402D message
automation). For more information, refer to the online help or the section "MESSAGES/USER DATA Policy
Item for Applications" in IBM Z System Automation Defining Automation Policy. The definitions here also
apply to message IXC402D.
Pressing Enter displays the CMD Processing panel, as shown in Figure 26 on page 128. Use this panel
to specify a valid hardware command for the image in the Command Text column and a "Pass/Selection"
value that must match the "Value Returned" definition specified on the Code Processing panel.
On the Message Processing panel enter k to define codes. Specify on the Code Processing panel, as
shown in Figure 27 on page 128, the following:
If you want to automate messages IXC102A and IXC402D , you must enter IXC102A for Code 1 and
BCPII for Code 2 for both messages.
• The names of jobs that should be canceled or kept when detecting a long ENQ, a "hung" command, or
command flooding
• The snapshot interval for a command class
• The title of the dump taken before the job is cancelled
• The default storage areas to be dumped
• Symbol definitions to be used when the dump specifications are provided by a PARMLIB member
Use the entry type GRP in the customization dialog to define the following policies:
• Resource definition
• JOB/ASID definitions
• IEADMCxx symbols
• Command definition
• Snapshot interval definition
ENQ.HUNGCMD
Enables the handling of jobs and commands that inhibit other commands from completing execution.
ENQ.LONGENQ
Enables the handling of long-running ENQs.
LOG
For the recovery of the system log.
LOGGER
For the recovery of the system logger.
PAGE
For the recovery of auxiliary storage shortage.
WTO
For the recovery of WTO(R) buffer shortages.
XCF
For automating messages IXC102A and IXC402D.
By default, all recovery actions are enabled. If you want to disable them, use the customization dialog
Flag Automation Specification and set the recovery flag to NO.
Note: You can change the automation recovery flag during runtime by using the command INGAUTO.
SA z/OS always displays messages on the local system. It forwards them to a focal point, if there is one
defined.
Procedure
To define gateway sessions:
1. For each system, define the outbound gateway autotask (GATOPER) on the Automation Operators
policy object of the customization dialog. Refer to "Automation Operators Entry Type" in IBM Z System
Automation Defining Automation Policy .
2. On the SA z/OS Network policy object, use the GATEWAY policy item to define the domains of all
systems within the network which need to communicate with each other. Refer to "Network Entry
Type" in IBM Z System Automation Defining Automation Policy.
3. Define operator IDs used for all inbound and outbound gateway autotasks used on the system in
the NetView DSIPARM data set member DSIOPF. See the chapter on how to install SA z/OS on host
systems in IBM Z System Automation Defining Automation Policy for details.
For example, the following panel defines a TAF fullscreen session for TSO in system CHI01:
COMMANDS HELP
------------------------------------------------------------------------------
AOFPINE3 Fullscreen TAF Application Definition Row 1 to 10 of 20
Command ===> SCROLL===> PAGE
Enter the applications with which SA z/OS operators can establish TAF
sessions automatically using the operator interface.
Procedure
1. The PRESTART policy in the STARTUP policy must have at least a NORMal start item with the INGVTAM
command to activate a list of major nodes. The following command can be used as an example:
Where majnoden are VTAM application major nodes. Each major mode is varied active to VTAM when
the subsystem prestart commands are issued. Note, it is expected that only one of the major nodes
contain the minor node that the VTAM application subsystem will use.
2. The FINAL definition in the SHUTDOWN policy is used to deregister the subsystem with SA z/OS VTAM
application recovery. Use the INGVTAM REQ=DEACTIVATE command in the policy. For example,
The DEACTIVATE request issues a vary net inactive for each major node registered by the
REQ=ACTIVATE. The vary is not done if the major node is shared by other subsystems that
have also registered the major nodes. When the last subsystem registered issues an INGVTAM
REQ=DEACTIVATE, the major node is varied inactive. The only exception to this is when the major
node contains model resources with wildcards in the node definition. In this case, the major node is
never inactivated.
3. The REFRESHSTART definition must have the same definition as the PRESTART definition in the
STARTUP policy. This policy item is used to reregister the subsystem with SA z/OS VTAM application
recovery.
4. Enter commands that are issued when the VTAM subsystem is restarted. Typically, these commands
reopen the VTAM ACB that the subsystem uses to communicate with VTAM.
5. Optionally enter a relationship for the subsystem to ensure that the prestart commands are only issued
when VTAM is up. The required relationship is:
where VTAM is the name of the VTAM subsystem and that is the supporting resource. Passive forces
the relationship to wait until VTAM is UP. Weak specifies that only the supporting resource status is
checked.
6. In addition the UP message for VTAM should have the following command:
INGVTAM REQ=ACTIVATE
Results
When INGVTAM is executed with REQ=ACTIVATE and no positional subsystem, it finds all the subsystems
that had previously registered via INGVTAM and issues Vary NET ACT commands for their major nodes.
After this has been done, it will execute any policy command(s) that is/are specified to USER MESSAGE
VTAMUP for the subsystems.
This environment knows the guard application as so called GDPS STOPAPPL. The APL representing the
GDPS STOPAPPL receives a shutdown request. The subsequent system shutdown will take place in the
listed order:
a. Execution of the defined PHASE0 commands.
b. Termination of the GDPS STOPAPPL.
c. Execution of the defined PHASE1 commands.
d. Termination of the OMVS application.
e. Execution of the defined PHASE2 commands.
f. Control is given to GDPS to remove the LPAR from the SYSPLEX.
For more information about this shutdown scenario, see “Shutting Down a z/OS systems in a GDPS
Environment” on page 141.
For considerations about coexistence of different SA z/OS versions, see topic "Coexistence of SA z/OS 4.2
with Previous Releases" in IBM Z System Automation Planning and Installation.
Example Definitions
The actions to shut down z/OS systems are defined using the pseudo message SYSTEM_SHUTDOWN in
the MESSAGES/USER DATA policy for the MVS Component entry type. If return code checking is turned on
but a code other than 0 is returned, SA z/OS will immediately stop the execution of the defined command
chain. In such a case, the termination of the NetView application itself will be skipped for further error
analysis.
Table 23 on page 140 shows example definitions that are defined in pseudo message
SYSTEM_SHUTDOWN.
The primary and secondary automation managers (PAM and SAM) on the local system are shut down by
SA z/OS automatically unless they are moved to another system. If not already initiated by the SA z/OS
policy definitions, OMVS will be shut down by SA z/OS automatically too.
The INGSHRES command invokes the policy defined shutdown commands for the specified local
application. If the shutdown commands have been issued, INGSHRES waits for the termination of the
affected resource. The command chain is executed in sequential order.
Take the INGSHRES SMF_REC command for an example.
Application SMF_REC has a defined command MVS Z EOD to stop SMF recording in its SHUTDOWN
policy. The message indicating that SMF recording has been stopped will be trapped in the automation
table. Command 'INGSMFMP AUTODOWN' will be called from the automation table to set the application
SMF_REC into status AUTODOWN.
Once SMF recording has been stopped successfully, 'INGSHRES ICSF' will be issued to stop the
application which is responsible for data encryption in the same way. After processing all PHASE2
commands, the NetView application will terminate.
For more information about the INGSHRES and INGSMFMP commands, see IBM Z System Automation
Programmer's Reference.
3. Whenever NetView is ended without its CLOSE command being invoked, it cannot automatically
archive recent messages in its active Canzlog. To accomplish the archiving of these messages, use
CANZLOG CUE command during phase 2.
The scenario is based on the provided best practice policies *BASE and *GDPS. For more details, refer to
the MVC entry GDPS_SYSTEM_SHUTDOWN in the *GDPS best practice policy.
Example Definitions
The actions you take to shut down z/OS systems within GDPS are defined using the SYSTEM_SHUTDOWN
message ID in the MESSAGES/USER DATA policy item for the MVS Component entry type. These actions
can include instructing SA z/OS to shut down resources out of the affected dependency tree of GDPS
STOPAPPL, shut down file systems, and so on.
Table 24 on page 142 shows example definitions for the GDPS_SYSTEM_SHUTDOWN entry that place
stop votes against the listed resources in PHASE1 in a sequential order. The desired completion of the
resource shutdown is processed in parallel. The specified INGRCHCK command at the end of the PHASE1
sequences waits for the completion of the stop requests for the specified resources. For more information
about the INGRCHCK command, see IBM Z System Automation Programmer's Reference.
If synchronization is necessary, the FDBK option for the INGREQ command permits waiting until the
appropriate subsystem has been shutdown. The FDBK=WAIT option causes an INGREQ stop command to
be processed sequentially. In this way, it slows down the shutdown process.
The primary and all secondary automation managers (PAM and SAMs) on the local system will be shut
down by SA z/OS automatically unless they are moved to another system. OMVS will be shutdown by SA
z/OS automatically too.
Setting of the Recovery Flag for SMFDUMP, stopping CANZLOG, stopping SMF recording (APL SMF_REC)
itself and subsequently stopping data encryption (APL ICSF) will be done synchronously as specified in
the PHASE2 command chain.
If return code checking is turned on but a code other than 0 is returned, SA z/OS will immediately stop the
execution of the defined command chain.
INGREQ Considerations
If nothing has been specified, a default of OVERRIDE=(TRG FLG SUS) and TYPE=NORM is used.
If necessary, you can override the default via the INGREQ user exit AOFEXC01.
UPON (OTHERMSG)
SELECT
* Ensure all WTORs are being automated
WHEN (WQE SUBSTR 345 C2D ^= "+0")
REVISE("Y" AUTOMATE)
OTHERWISE
END
Incoming WTORs are processed by the NetView automation table (AT) and this triggers commands
according to the processing purpose:
ACTIVMSG, HALTMSG, TERMMSG 1. Update the status of the subsystem that issued the WTOR.
2. Issue defined commands or replies (or both).
3. Store the WTOR if it has not been replied to.
INGMON 1. Issue commands or replies (or both) that have been defined to a
monitor resource.
2. Store the WTOR if it has not been replied to.
The commands (other than OUTREP) are routed to the first active task that is defined in the AT synonym
%AOFOPGSSOPER%. Thus they are usually routed to the work operator of the subsystem that issued the
WTOR. This is done based on the job name that is associated with the WTOR.
Automation routines that process WTORs from subsystems that are not defined in SA z/OS or are from
MVS components are routed to tasks that the WTORs have been assigned to based on their message ID.
The OUTREP command is routed to the first active task that is defined in the AT synonym
%AOFOPSYSOPER%.
Example
Message ABC123D is issued by application ABCAPPL during startup as permanent, outstanding WTOR
and SA z/OS stores it as primary WTOR for this application. During the lifetime of the application,
whenever message ABC789I is issued in special situations, a reply should be issued to the permanent,
outstanding WTOR ABC123D for this application. The MESSAGES/USER DATA automation policy item for
message ID ABC789I of the application is used to define this reply.
When message ABC789I is issued by the application, SA z/OS retrieves the reply ID of the permanent,
outstanding WTOR and issues command MVS R 117,ABC RESTORE, as shown in Figure 30 on page 147.
Restrictions
The reply IDs of a subsystem's outstanding primary WTORs are stored by SA z/OS as a blank-separated
list without leading zeros. The storage for this is restricted to 255 bytes. If this limit is reached, the reply
IDs of further incoming primary WTORs are ignored.
Usage Notes
When storing incoming WTORs, a search for code definitions for the message ID, WTORS, is first made in
the entry for the subsystem that issued the WTOR.
If the subsystem itself cannot be found in the automation policy or the code definitions that are searched
for are not found for the subsystem, they are searched for under the MVSESA entry. For subsystems such
as IMS or NetView that have a permanent outstanding reply, you should specify the code definitions for
the subsystem entries themselves instead of MVSESA. This improves performance by reducing searches
within the automation policy.
• Indicator whether the COPY process was successful or not (S=successful, U=unsuccessful)
If user exit INGEX03 produces return code RC = 0, COPY processing continues. If a return code RC > 0 is
produced, an error message is displayed, the COPY function does not start, and processing terminates.
If user exit INGEX03 ended with return code RC > 0, the user exit INGEX04 is not called because the
COPY processing will terminate.
User exit INGEX04 is always called once the COPY function has started. The information about the
success or failure of the COPY function is passed as a parameter.
If user exit INGEX04 produces a return code RC > 0, an error message is displayed.
Note: When renaming an entry, a new entry is created and the old entry is deleted. Therefore, INGEX05
is called before the old entry is deleted and INGEX06 is called after the entry has been deleted.
• INGEX16: This is called after an entry has been renamed. The following parameters are passed:
– Entry Type
– Old Entry Name
– New Entry Name
• INGEX17: This is called during the IMPORT function, when reading data from the source policy
database. One parameter is passed:
– Name of copy data work table. This table contains the entry types and entry names of the data to be
copied.
• INGEX18: This is called after the IMPORT function has ended. INGEX18 is only called if INGEX17 was
called at the beginning of the IMPORT function. If checks have been made that prevent INGEX17 being
called, INGEX18 is not called either.
One parameter is passed:
– Indicator whether the IMPORT process was successful (S=successful, U=unsuccessful)
This example assumes that the high level qualifier of the data sets where the IBM supplied parts exist
is SYS1.
If you specify the SYSEXEC parameter in the INGDLG call, you need to specify the IBM supplied library
explicitly with its fully qualified data set name.
Initialization Exits
These exits are invoked during SA z/OS initialization:
• AOFEXDEF
• AOFEXI01
• AOFEXI02
• AOFEXI03
• AOFEXI04
• AOFEXI05
• AOFEXI06
• AOFEXINT
• Environmental Setup Exits
Figure 31 on page 153 shows the sequence that exits may be invoked during SA z/OS initialization.
AOFEXDEF
This exit is called at the start of SA z/OS initialization, before message AOF603D is issued. For example,
using AOFEXDEF you can load a different MPF table.
This exit is run on AUTINIT1.
Parameters: None.
Return Codes: 0 is expected.
AOFEXI01
This exit is invoked before the AOF603D ENTER AUTOMATION OPTIONS reply is issued. It is invoked in a
NetView PIPE and gets the data that is displayed in the AOF767I message as input in the default SAFE.
With this exit you can add or remove lines from the message and add additional options to the reply.
Parameters: The Load Type is passed on input.
IPL|RECYCLE
IPL
Indicates that SA z/OS has been started after an IPL.
RECYCLE
Indicates that NetView and therefore SA z/OS has been restarted.
Return Codes: 0 is expected.
AOFEXI02
This exit is invoked after the operator has replied to the AOF603D reply. It gets the operator's response to
the reply as input in the default safe and it can remove, add, or change the options that the operator has
entered.
Parameters: The Load Type is passed on input. See “AOFEXI01” on page 154.
Return Codes: 0 is expected.
AOFEXI03
This exit is invoked before SA z/OS loads the NetView automation table(s) and message revision table.
It can be used to create statistics of the currently loaded ATs. Together with the AT listings that SA z/OS
produces at load, these statistics can be used for any purpose.
Parameters: None.
Return Codes: 0 is expected.
AOFEXI04
This exit is invoked after SA z/OS loads the NetView automation table(s) and message revision table. It
can be used to store the AT listings that SA z/OS produces at load.
Parameters: None.
Return Codes: 0 is expected.
AOFEXI05
This exit is called before either an ACF load or refresh takes place. The parameter indicates what action
the automation agent is going to process: REFRESH or LOAD.
Parameters: Type of ACF action (REFRESH or LOAD).
Return Codes: 0 (Note: the return code is ignored by the caller).
AOFEXI06
This exit is called after an ACF process (LOAD or REFRESH) has completed (AOFCOMPL=YES) and before
the AOF540I message is issued.
Parameters: Type of ACF action (REFRESH or LOAD).
Return Codes: 0 (Note: the return code is ignored by the caller).
AOFEXINT
This exit is called when SA z/OS initialization is complete, before message AOF540I is issued. You can
use AOFEXINT to call your own initialization processing after SA z/OS has finished. Refer also to the
description of the global variable AOFSERXINT in AOFSERXINT global variable.
Parameters: The input parameter is the Starttype which is one of the following: RESYNC, IPL, REFRESH,
RELOAD, RECYCLE.
Return Codes: 0 is expected.
Parameters
Parameters are passed in sequence, delimited by blanks.
INITIALIZATION
INITIALIZATION is a constant.
RELOAD|REFRESH|IPL|RECYCLE
RELOAD
Indicates that the automation control file has been reloaded.
REFRESH
Indicates that the automation control file has been refreshed.
IPL
Indicates that SA z/OS has just been restarted after a system IPL.
RECYCLE
Indicates that NetView has been restarted.
Return Codes
0 is expected. If you return a non-zero return code you may prevent other exits from being invoked or
disrupt SA z/OS initialization.
Usage Notes
• These exits are not driven if you run RESYNC.
• Unlike the other static exits, you must specify the name of the routine or routines to invoke in the
automation control file.
Static Exits
These exits are invoked at fixed points in SA z/OS processing.
They are always invoked if they are found in the DSICLD concatenation. Positive return codes from these
exits are generally ignored, though it is recommended that you always exit with a return code of 0.
The main purpose of static exits is to allow you to take your own actions at specific points during SA z/OS
processing. The static exits available are described below.
AOFEXSTA
This exit is called from AOCUPDT every time the automation status of an application is updated.
Note: It is not necessary for AOCUPDT to change an application automation status for this exit to be
called. The exit is still invoked if the update does not result in a change of status.
AOFEXSTA can be used to perform any special status transition processing that cannot be triggered by
other methods.
Note: This exit is invoked frequently, and is invoked at times when SA z/OS is not fully initialized. Your exit
code should be as robust and efficient as possible.
SA z/OS attempts to load AOFEXSTA into storage at initialization. If this attempt fails, AOFEXSTA is not
invoked on any AOCUPDT calls. To activate the exit it must be present in the DSICLD concatenation when
the automation control file is loaded or reloaded.
AOFEXSTA runs on the task that called AOCUPDT, after all other processing has finished.
Attention: AOFEXSTA is scheduled with EXCMD opid(). If your operators are issuing commands
that change application statuses and you want to use AOFEXSTA, you may have to modify your
command authorization definitions.
Parameters: Parameters are passed in sequence, delimited by commas.
Resource type
SA z/OS uses types of SUBSYSTEM, MVSESA, WTORS, and SPOOL. Other users may use other
resource types.
Resource Name
For an application, this is the name of the subsystem it is defined as.
Automation Status
For an application, this is one of the automation statuses that is supported by SA z/OS.
SDF Root
This is the SDF Root, as specified in the customization dialog, for the system that originated the status
update. Generally the exit is driven only for status changes on other systems on the automation focal
point.
Return Codes: 0 is expected.
Restrictions:
• Because the exit is scheduled with EXCMD, the status update and subsequent processing in the caller
will have completed before the exit is invoked.
• Check the resource type and the SDF root to ensure you are only trying to process the right things.
• Plan carefully before you take any action to change the status of an application from this exit. If you are
not careful you may create a loop (AOCUPDT to AOFEXSTA to AOCUPDT to AOFEXSTA).
Notes:
AOFEXX02
The exit allows the installation to decide whether or not an SDF update should be performed for the
specified resource.
A non-zero return code from the exit causes the SDF update processing to be skipped, both locally as well
as for the focal point.
This exit is called prior to posting entries to SDF to provide the facility to filter out specific events.
Refer to the sample exit for details of the parameters passed to the exit and the return codes.
AOFEXX04
This exit is called from CHKTHRES every time that this routine is called to check the number of errors
recorded in the automation status file for a given resource against error thresholds that are defined in the
automation control file.
Refer to the sample exit for details of the parameters passed to the exit and the return codes.
AOFEXX05
The exit is driven by SA z/OS at initialization time when setting up the SDF panels and trees or by the
RESYNC SDFDEFS command.
The exit is used by the installation to replace user variables in the SDF panel definition. A user variable
must follow the same convention as a z/OS system symbol, that means it must start with an ampersand
(&) and finish with a dot(.). An example is &MVDOMAIN.
Refer to the sample exit for details of the parameters passed to the exit and the return codes.
Flag Exits
Using automation flag exits you can cause your automated operations code to exit normal SA z/OS
processing to an external source, such as a scheduling function, to determine whether automation should
be on or off for a given resource at that particular instant.
Flag exits can be defined for any flag (AUTOMATION, INITSTART, START, RECOVERY, TERMINATE, or
RESTART) on any major or minor resource. See the description of the MINOR RESOURCES policy item in
IBM Z System Automation Defining Automation Policy for more information on minor resources.
You can specify multiple exits for each flag.
A flag exit is invoked only if SA z/OS checks the value of the current flag setting during the flag evaluation
process of AOCQRY, as described in IBM Z System Automation Programmer's Reference. If one of the
global or specific flags, which have to be checked in one iteration step during the evaluation process over
the inheritance hierarchy levels is set to NO, the other flag no longer has to be checked.
With the default BYPASS option of AOCQRY, exits that have been defined for the automation flag of a
resource are executed when that automation flag is checked during flag evaluation and the flag value is
EXITS.
With the FORCED option of AOCQRY, exits that have been defined for the automation flag of a resource are
executed when that automation flag is checked during flag evaluation, independent of the flag value, as
long as it is not empty.
If an automation flag is set to EXITS, the flag value is assumed to be YES during flag checking as long as
none of the exits that have been defined for the checked resource switch the flag to NO. Exits that are
forced to execute do not change the flag value.
Flag settings are determined by:
• The automation policy settings
• NOAUTO periods (the flag is OFF during a NOAUTO period)
• The user-entered INGAUTO command
For example, if you enter the following flag settings:
When SA z/OS checks the current value of any flag for the JES2 application, the process is as follows:
Flag Process
AUTOMATION 1. Call exit J2AUT.
2. If the exit returns:
• RC=0: AUTOMATION flag is YES
• RC>0: AUTOMATION flag is NO
Flag Process
START 1. Call exit J2AUT (because of AUTOMATION global flag).
2. If exit returns RC=0, call exit J2STR.
3. If:
• Both flags return RC=0: START flag is YES
• Either flag returns RC>0: START flag is NO
Note: Normally the START and RECOVERY flags are checked by SA z/OS only for minor resources but not
for the subsystem itself.
Parameters
Parameters are supplied in sequence, delimited by blanks.
Flag
This is the name of the flag that is being checked. Possible values are AUTOMATION, INITSTART,
START, RECOVERY, TERMINATE or RESTART.
Time Setting
Time Setting is a constant. It can be either:
AUTO
Automation is currently turned on.
NOAUTO
Automation is currently turned off.
A value of NOAUTO is possible only if AOCQRY is called with the parameter EXITS=FORCED.
Note: This ensures that the exit is invoked, but it is not possible for an exit to override a NOAUTO
period.
Resource Name
This is the name of the resource that the flag is being requested for. For minor resources it contains
the fully qualified minor resource name. Given no flag definition for TSO.USER.MAG1 and an exit
enabled for TSO.USER, the resource name passed to the exit would be TSO.USER.MAG1 if a check was
made for TSO.USER.MAG1.
Resource Type
This is the type of the resource that the flag is being requested for. Possible values are DEFAULTS,
SUBSYSTEM, or MVSESA (the value of the common global variable AOFSYSTEM).
Target Prefix
This is the TGPFX value with which AOCQRY was invoked. If TGPFX is not specified, the value SUB is
passed.
Return Codes
0
Automation is allowed by the exit.
>0
Automation is not allowed.
Notes:
1. Flag exits are always called through the AOCQRY command. This means that the task global variables
for the resource have been primed and are available for use. Normally the names of the task global
variables are prefixed with SUB, but if AOCQRY is called with a different value for parameter TGPFX,
they are found in variables that are prefixed with that value. You should use the TGPFX parameter that
is passed to locate the task global variables.
2. The set of task global variables that are set by AOCQRY depends on the values for the resource and
request parameter. Make sure that the task global variables that you rely on in your exit are being set
up.
3. If an exit is invoked for a minor resource, the task global variables are set for the major resource that is
associated with that minor resource.
4. If you call AOCQRY from within your exit you must specify a TGPFX value that is different from the
TGPFX parameter value you were passed. You are responsible for ensuring the uniqueness of all
TGPFXs if you nest AOCQRY exits. Because this can become quite complex, it is recommended you
avoid nesting exits.
5. Do not code calls to ACFCMD, ACFREP, or CDEMATCH because these use task global variables that are
prefixed with SUB that may not be set up for the application that you want to process.
6. Do not change any of the task global variables that have been set by AOCQRY.
7. Flag exits may be called frequently, so performance is important.
8. If AOCQRY is specified with FORCE and multiple exits are defined for a flag, the exits are called in
order.
Command Exits
These exits can be called during the processing of certain commands.
Sample exits are provided with the product. For details on copying and updating sample exits, refer to IBM
Z System Automation Planning and Installation.
AOFEXC00
The AOFEXC00 exit routine is called if the selection L has been entered in the AOC command dialog.
No parameters are passed to the routine. The purpose of this routine is to act as the starting point for
installation-provided local functions.
AOFEXC01
If this exit is defined, it is invoked during INGREQ processing before Precheck and Verification processing.
The exit allows you to modify the parameters that are passed.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
The exit is not called during the INGREQ REQ=CANCEL processing. You may use exit AOFEXC08 instead.
AOFEXC02
If this exit routine is defined, it is invoked during INGSCHED processing before the schedule override file
is updated. The parameters are positional and separated by a comma.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC03
If this exit routine is defined, it is invoked by the DISPINFO command slave to retrieve user-supplied
information about the subsystem. The input for the routine is the subsystem name. The data returned by
the exit is shown as part of the DISPINFO output.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC04
If this exit routine is defined, the command code U is supported for the DISPMTR, DISPSTAT, and INGLIST
commands. The input for the AOFEXC04 exit is the resource name (subsystem name for DISPSTAT) and
the location of the resource.
The location is either the system name if the resource resides on a system member of the local sysplex,
or the domain ID if the resource resides on a system that is outside of the local sysplex. For sysplex APGs,
REF and DMN resources, the location is always the system on which the INGLIST command was invoked.
The parameters are separated by a comma.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC05
This exit is called on entry of the INGLIST command. The exit allows you to modify the input parameters.
The modified input parameters are returned to the INGLIST command by sending a message (single or
multiline) to the console, for example:
OBSERVED=* DESIRED=*
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC06
This exit is called on entry of the INGSET command with the SET action. The exit allows you to perform
authorization checking of the resources for the INGSET command.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC07
This exit is called on entry of the INGIMS command. The exit allows you to perform authorization
checking of the IMS subsystem that is the subject of the INGIMS command.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC08
This exit is called on entry of the INGVOTE command. The exit allows you to perform authorization
checking of the resources for the INGVOTE command. Because the INGSET CANCEL/KILL action uses the
INGVOTE command, this exit is also called when performing this action.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC09
This exit is called on entry of the SETSTATE command. The exit allows you to perform authorization
checking of the resources for the SETSTATE command.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC10
This exit is called on entry of the INGEVENT command. The exit allows you to perform authorization
checking of the resources for the INGEVENT command.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC11
This exit is called on entry of the INGCICS command. The exit allows you to perform authorization
checking of the resources for the INGCICS command.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC13
This exit is called on entry to the INGGROUP and INGMOVE commands. The exit allows you to perform
authorization checking of the user ID that issues the command.
Refer to the sample exit for details of the parameters passed to the exit and the return codes.
AOFEXC14
This exit is called by the SA z/OS GDPS termination routine (INGRGDPS) after stopping the PAM or
selecting a SAM to become the PAM.
Refer to the sample exit for details of the return codes.
AOFEXC15
If this exit routine is defined, it is invoked during INGREQ processing after the GO confirmation has been
received.
The user exit is called in a PIPE. Refer to the sample exit for details of the parameters that are passed to
the exit.
AOFEXC16
This exit is invoked by the INGTHRES command prior to updating or deleting the thresholds for a given
resource. It allows you to perform authorization checking of the requested action. If the exit returns with
a non-zero return code and additional data is written to the console, this data is shown in the message
panel. If no additional data is passed back in the exit, message AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC17
This exit is invoked by the INGALERT command. It allows you to:
• Modify the event text
• Reduce the Inform List with event notification targets such as IOM, EIF, TTT, and USR
• Modify the value that is returned from the matching code definition with information such as the event
severity or whether to ignore the event
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC18
This exit is invoked by the INGLKUP command. It is driven prior to stopping or canceling the specified
address space. It allows you to perform authorization checking of the requested action. If the exit returns
with a non-zero return code and additional data is written to the console, this data is shown in the
message panel. If no additional data is passed back in the exit, message AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC19
This exit is invoked by the INGAMS command. It is driven in the following cases:
• Enabling or disabling access to the takeover file
• Suspending or resuming systems
• Refreshing the configuration
• Performing a diagnostic action (starting or stopping recording, taking a snapshot)
• Switching the primary automation manager
The exit allows you to perform authorization checking of the INGAMS command. If the exit returns with
a non-zero return code and additional data is written to the console, this data is shown in the message
panel. If no additional data is passed back in the exit, message AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC20
This exit is called when a command is passed via the TWS request interface. The exit allows the
installation to perform authorization checking. Optionally, the exit can modify the command and/or the
completion information by returning up to two data lines:
• line 1 is the modified command including all its parameters. A null string must be returned when the
command is not modified. This is only necessary when modifying the completion information via the exit
• line 2 is the completion information:
– maximum return code
– completion checking coding.
The parameters must be separated by a comma. Error code U010 will be posted when one of the
parameters is wrong.
The installation exit is called in a PIPE. If the exit returns a bad return code and additional data is written
to the console, this data is written in the netlog. If no additional data is passed in the exit, message
AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC21
This exit is invoked by the INGOPC command with the option REQ=MOD. It allows you to perform
authorization checking of the requested action. If the exit returns with a non-zero return code and
additional data is written to the console, this data is shown in the message panel. If no additional data is
passed back in the exit, message AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC22
This exit is called when a trouble ticket is created using the INGALERT command. It allows you to
determine the trouble ticket detail data that is to be written to the detail data set.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC23
This exit is invoked when a request is passed via the TWS interface. It allows you to perform authorization
checking of the requested action. If the exit returns a non-zero return code and additional data is written
to the console, this data is taken as a message. If no additional data is passed back in the exit, message
AOF227I is issued.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC24
If this exit is defined, it is invoked during INGRUN processing. This exit allows you to modify the
parameters that are passed.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
AOFEXC25
This exit is invoked when an INGAMS REFRESH request is processed. It provides details about new,
changed and deleted subsystems (APLs), application groups (APGs) and monitor resources (MTRs). The
exit is driven on NetView operator AUTO2 to prevent performance degradation during refresh processing.
It is recommended to pass back a return code of 0, however, the return code is not checked, today.
Refer to the sample exit for further details.
AOFEXC26
If this exit is defined, it is invoked during INGSUSPD processing before Verification processing. The exit
allows you to check the parameters that are passed.
Refer to the sample exit for details of the parameters that are passed to the exit and the return codes.
Its default processing will check the passed comment for emptiness. If no comment is specified, it is not
possible to inject a suspend request with the sample exit.
The exit is not called during the INGSUSPD REQ=RESUME processing.
AOFEXC27
The AOFEXC27 user exit performs authorization checking for the INGAUTO command with its specified
parameters. It provides you the flexibility to allow or prevent setting automation associated flags by
INGAUTO and DISPFLGS commands.
If AOFEXC27 is defined, it is invoked during INGAUTO processing, after INGAUTO parameters are passed
to it. Then, AOFEXC27 decides either to allow or deny INGAUTO execution based on the parameters.
SUSPEND and RESUME requests are always executed, independently of AOFEXC27 definitions.
Refer to the sample exit in the SINGSAMP library for details of the parameters that are passed to the exit
and the return codes.
AOFEXC28
If this exit is defined, it is invoked during INGDYN processing before a dynamic resource is created or
deleted.
For INGDYN CREATE, the exit allows you to reject creation of a dynamic resource and to modify the
parameters that are passed.
For INGDYN DELETE, the exit allows you to reject deletion of a dynamic resources.
This user exit is called in a PIPE. Refer to the sample exit for details of the parameters that are passed to
the exit and the return codes.
AOFEXC29
If this exit is defined, it is invoked during the INGDYN processing after the GO confirmation has been
received to create or delete a dynamic resource.
This exit can be used, for example, to resume the new dynamic resource after it's created, or to adapt the
properties of the hosting group after the new resource is created and added into the hosting group.
This user exit is called in a PIPE. Refer to the sample exit for details of the parameters that are passed to
the exit.
Pseudo-Exits
This section discusses a number of places where SA z/OS either makes special use of a flag exit or has a
function with certain, exit-like, qualities.
Testing Exits
Exits should be well tested with a variety of different input parameters before they are put into
production. For exits that need AOCQRY task globals, you can call AOCQRY to set up the globals without
evaluating the flag exits, and then invoke the exit on its own for testing purposes. This method saves the
overhead of calling AOCQRY every time you run the exit.
Attention:
If you have a syntax error or a no-value-condition in your exit it can cause parts of SA z/OS to
abend, resulting in severe disruption of your automation.
• Command specification in the MESSAGES/USER DATA automation policy item for the special message
ID LOGREC
SYSLOG Processing
The syslog function that is provided responds to messages that are queued to the syslog. The function
starts an external writer to save the syslog that was queued. The commands to be selected can be defined
depending on the occurrence of the incoming messages.
The syslog function includes the following items:
• Automation routine AOFRSA08, see “AOFRSA08” on page 181
• Automation table entry for system message IEE043I
• Error threshold definitions for MVS component minor resource SYSLOG
• Command specification in the MESSAGES/USER DATA automation policy item for the special message
ID SYSLOG
• A NetView automation table entry for the application program abend message, DFS554A
• The subsystem that issues the abend message has the following automation policy definitions:
– Error threshold definitions in the MINOR RESOURCE policy item for the minor resource PROG.progid
or TRAN.tran
– Code definitions in the MESSAGES/USER DATA policy item for the message types
ABCODEPROG.progid, ABCODEPROG, ABCODETRAN.tran, or ABCODETRAN
– Reply or command specifications in the MESSAGES/USER DATA policy item for the message ID
DFS554A
Sample Scenario
A resource is found to be in a BROKEN state and the standard action needs to be enhanced.
1. SAPHOST_CTL/APL/AOCA is analyzed by INGWHY:
-------------------------------------------------------------------------------
SITUATION:
SAPHOST_CTL/APL/AOCA is not in its desired status and
automation is unable to proceed.
REASON 2 OF 2:
SAPHOST_CTL/APL/AOCA has a dependency on SAPHOST_EXE/APL/AOCA.
SAPHOST_EXE/APL/AOCA ..
..could not be started.
..is in a PROBLEM status and requires operator intervention.
..is in the agent status 'BROKEN'.
..may have received a non-recoverable error.
..is desired to be AVAILABLE.
ACTION 2 OF 2: INGWHYSA(A0209600)
Refer to your company's rules in order to take the appropriate
action.
You may contact the owner that is responsible for SAPHOST_EXE/APL/AOCA.
Consider the following commands to apply to SAPHOST_EXE/APL/AOCA:
- EXPLAIN
- SETSTATE
Command
===>___________________________________________________________________
ACTION 2 OF 2: INGWHYSA(A0209600)
INGWHYSA is the name of the DSIPARM member, where INGWHY reads the action text from, and
A0209600 identifies the action text within this file.
3. In ISPF, view member INGWHYSA and locate the action ID A0209600:
/*==============================================================*/
/* Action : A0209600 */
/* : Resource is in agent state BROKEN. */
/* The Desired state is AVAILABLE. */
/*==============================================================*/
IF #action = 'A0209600' THEN DO
'Refer to your company's rules to take the appropriate action.'
'You may contact the owner that is responsible for '#sub_res'.'
'Consider the following commands to apply to '#sub_res': '
'- EXPLAIN '
'- SETSTATE '
END
Copy the comment and the complete 'IF … THEN DO … END' section to your clipboard.
4. In ISPF, edit member INGWHYU and paste the content of your clipboard to the end of the file between
these lines:
/* ********************************************************** */
/* Start coding your action overrides here... */
/* End of INGWHYU */
/**************************************************************/
5. Edit and test the action in INGWHYU as described in the INGWHYU prolog.
Important: INGWHYU is processed by NetView as Data REXX code. Therefore, it must follow the Data
REXX syntax in logic mode.
Data REXX directive: /*%LOGIC. See Using Data REXX in Programming: REXX and the NetView
Command List Language.
Preparation
You need OMEGAMON for z/OS installed and running on the system where you want to run the procedure.
You need a TEMS server up and running that is in communication with OMEGAMON for z/OS.
Check you can display:
• OMEGAMON for z/OS
• OMEGAMON data from a TEP connected to the TEMS.
You need to know:
• a userid and a password that gives you access to the TEMS
• the IP address and the port number of the SOAP server running on the TEMS.
If you are going to use HTTPS for communication, you need to have already set it up under TCPIP. (See
the step for configuring Tivoli Enterprise Portal in "Traditional SA z/OS Configuration" in IBM Z System
Automation Planning and Installation).
Procedure
1. Take a backup of your normal PDB and then open it in the customization dialogs.
2. Go into Data Management (Option 5) and select Import for Add On (Option 2).
3. Place a C (for Customize) against the *ITM add-on to get to the component selection panel.
4. You should see a list of components, use M to reMove and S to Select to ensure that only the
'Monitoring Analytic' component is selected.
5. Press PF3 and then select 1 to view the data to be imported. Select option 3 to run the import.
Results
After some informational messages, you should see Import Successful, after which you press PF3
twice to access the main menu.
Procedure
1. Open your PDB and select NTW (Networks).
2. Enter new TEMSserver, where TEMSserver is a unique name to identify the TEMS server that is
providing your OMEGAMON data.
3. Use Copy to copy the definitions from the SOAP_SERVERS network definition.
4. Select the SOAP SERVER policy and edit the HUBTEMS entry.
5. Enter the Host name and the Protocol.
If you are using HTTPS as your protocol, you need to change the port number to 3661 (although this
and the 1920 port number are only the default values, your site may have changed them).
6. Specify the User ID and Password of SAFPW.
This instructs System Automation that you are using the INGPW utility under NetView to supply the
password.
7. Press PF3 twice to return to your policy panel and then select WHERE USED.
8. Select the systems that will be receiving their OMEGAMON data through this TEMS server.
Note that it is important that there is only one single network with a HUBTEMS SOAP server defined
which is linked to each system.
9. Press PF3 to return to the entry selection panel.
Minor Resources
There is a minor resource called MONITOR defined. This controls the execution of the monitor when
the APL is Available. By default its RECOVERY flag is set to LOG. This means disruptive commands are
written to the Netlog rather than being executed. Non-disruptive recovery actions WARN and DIAG are
still performed.
For your first deployment you probably want to keep this value set to LOG, but for future deployments you
may want to enable your actions and set it to YES.
MESSAGES/USER DATA
There are two categories with definitions under this; INGCATEGORY and INGRECOVERY
• INGCATEGORY, you need to modify to add categorization rules for your address spaces.
• INGRECOVERY, use appropriate actions for the categorization.
You may want to inherit definitions for all LOOPSUPP monitors using the C_LOOPSUPP APL class.
Code Description
CODE1 The address spaces WLM Service Class.
CODE2 The address spaces job type: STC, BATCH, TSO. This value will be suffixed
with _SA as the address space defined to SA z/OS as an APL.
CODE3 The value of jobname.stepname for the address space. Note that the
code field is only 15 characters long, so you must use a wildcard if you
want to make the check critical upon the final characters of the step
name.
The output of the code match is the recovery category and this defaults to the name of the WLM Service
Class.
The sample policy puts all resources known to SA z/OS and all SYSOTHER resources into the WARN
recovery class, and all TSO users into the TSO_USER recovery category.
Press PF3 to exit when you are done.
Code Description
CODE1 The name of the Recovery Category; result of INGCATEGORY.
CODE2 The current recovery pass for the address space. The recovery pass is
reset if there is a monitor cycle where the address space is not reported
as looping or if the monitor APL is stopped. This is normally a number,
but if you specify an * the reaction happens on every pass.
CODE3 <blank>
Action Description
NONE Do nothing.
WARN Issue a warning message, ING601E. The message is written to the Netlog
and notify operators setup to be informed on behalf of class 40 and 44 to
receive the warning message.
Warning messages are posted to SDF under the MVSESA resource. The
number of passes the job has been found on determines their severity:
<10 -> UNUSUAL
<20 -> IMPORTANT
Action Description
DIAG Use the OMEGAMON Inspection tool to obtain diagnostics on the address
space and write a diagnostic report to the Netlog. This can assist in
identifying where in the code the loop is occurring.
STOP Issue an MVS STOP command for the address space, or, if it is a TSO
USER, an MVS CANCEL USER command is issued. If used with an address
space defined to SA z/OS the STOP command will still be issued, but it
will not be translated into an INGREQ STOP request. This is to allow you
to code a direct shutdown sequence on a pass after you have tried a
SHUT_ command.
CANCEL Issue a MVS CANCEL command for the address space or, if it is a TSO
USER, an MVS CANCEL USER command is issued. If used with an address
space defined to SA z/OS the CANCEL command will still be issued, but
it will not be translated into an INGREQ STOP request. This is to allow
you to code a direct shutdown sequence on a pass after you have tried a
SHUT_command
FORCE Issue an MVS FORCE, ARM command for the address space, or if it is a
TSO USER, an MVS CANCEL USER command is issued. If used with an
address space defined to SA z/OS the FORCE command is still issued, but
it is not translated into an INGREQ STOP request. This is to allow you to
code a direct shutdown sequence on a pass after you have tried a SHUT_
command.
SHUT_NORM Issue an INGREQ STOP for shutdown type NORM for an address space
defined to SA z/OS. If used with an address space not defined to SA z/OS,
it is translated into a STOP instruction.
SHUT_IMMED Issue an INGREQ STOP for shutdown IMMED for an address space
defined to SA z/OS. If used with an address space not defined SA z/OS, it
is translated into a CANCEL instruction.
SHUT_FORCE Issue an INGREQ STOP for shutdown type FORCE for an address space
defined to SA z/OS. If used with an address space not defined to SA z/OS,
it is translated into a FORCE instruction.
SUSPEND Issue an MVS RESET,QUIESCE for the address space. This stops any
further CPU dispatching for it, but not stop it.
RESET_class Issue an MVS RESET,SRVCLASS=class for the address space. This
changes its WLM dispatching class, preferably to one where it consumes
less CPU. Changing the address space to class SYSOTHER reduces its
dispatching priority to a very low value.
USER_prog The prog parameter is the name of a user program which, if found, is
invoked during the recovery process.
The parameters passed to the routine are:
Linkage
Now that your categorization and recovery policies are defined (you can come back later and refine them),
you need to link the APL to one or more systems where it runs.
Note that the systems it gets linked to must have a Network (NTW) defining a SOAP server called
HUBTEMS linked to them or the monitor does not work.
To do this, create an APG with a blank automation name, make your LOOPSUPP_identity APL a member
of it and link it to the systems where you want the monitor to run. You can model the APG on the
ING_ANALYTIC APG if you wish.
Build
You now need to build your SOCNTL files and get them ready to be activated on the target system.
so if your userid was AutoAgnt and your password was ABC1234d you would issue:
When you subsequently change the password you need to reissue this command to tell System
Automation what the new password is.
AOFRSA01
Purpose
You can use the AOFRSA01 automation routine to respond to logrec data set nearly full or full messages
from your system by issuing commands from the configuration files to dump and clear the contents of the
logrec data set.
AOFRSA01 keeps track of the incoming logrec data set messages and compares their occurrence with
predefined thresholds of infrequent, frequent, and critical level. An exceeded threshold is used as the
option to select the appropriate commands according to the first field in the command entry of the
MVSESA/LOGREC entry/type-pair in the configuration file. If no threshold is exceeded the commands
defined for the selection option ALWAYS are issued.
AOFRSA01 should be called from the NetView automation table.
Syntax
AOFRSA01
Restrictions
• Actions are only taken in AOFRSA01 if the recovery automation flag for LOGREC is on.
• Processing in AOFRSA01 is only done if it is called from NetView automation table by one of the
expected messages IFB040I, IFB060E, IFB080E or IFB081I.
• The commands from automation policy to dump and clear the LOGREC data set are only issued if a
LOGREC recovery function is not already in progress.
Usage
Automation routine AOFRSA01 is intended to respond to the following messages:
The commands to issue are selected from the command entry of the MVSESA/LOGREC entry/type-pair in
the configuration file.
If no threshold is reached when one of the expected messages arrive, all commands to entries with
no selection option and to selection option ALWAYS are selected. If the threshold at level infrequent is
exceeded, all commands to entries with no selection specification option and to selection option INFR are
selected. In the same way a level of frequent corresponds to selection option FREQ and a level of critical
corresponds to selection option CRIT.
Make sure that the automation routine AOFRSA02 is issued by message IFC001I from the NetView
automation table, to indicate the completion of the LOGREC recovery function.
Global Variables
&EHKVAR1
When defining the commands in the configuration files to dump and clear the contents of the LOGREC
data set, the variable &EHKVAR1 can be used for the name of the LOGREC data set. This variable is
substituted with the complete data set name of the LOGREC data set name.
AOFRSA02
Purpose
You can use the AOFRSA02 automation routine to respond to the initialization message of the LOGREC
data set to reset the flag, which indicates that the LOGREC recovery function is in progress
AOFRSA02 should be called from the NetView automation table.
Syntax
AOFRSA02
Restrictions
• Actions are only taken in AOFRSA02 if the recovery automation flag for LOGREC is on.
• Processing in AOFRSA02 is only done if it is called from NetView automation table.
Usage
Automation routine AOFRSA02 is intended to respond to the following message:
This is produced during the initialization of the LOGREC data set and describes the limits of the data set.
The flag, indicating that the LOGREC recovery function is in progress, is used by automation routine
AOFRSA01.
Examples
This example shows a sample scenario for LOGREC data set processing:
The following entries in the NetView automation table are created automatically to issue the appropriate
automation routine when one of the expected messages arrives:
IF MSGID = 'IFC001I'
THEN
EXEC(CMD('AOFRSA02')ROUTE(ONE %AOFOPRECOPER%));
COMMANDS HELP
------------------------------------------------------------------------------
Thresholds Definition
Command ===>
Resource : MVSESA.LOGREC
Assume that the following message arrives the first time for one day:
Because none of the defined thresholds is exceeded, the automation routine AOFRSA01 searches for
defined commands without selection option and to selection option ALWAYS to be issued. With the
control file shown above the command MVS S CLRLOG,DSN=&EHKVAR1 is selected. Before issuing this
command, the variable &EHKVAR1 is substituted by the data set name of the received message resulting
in MVS S CLRLOG,DSN=SYS1.AOC1.MAN3.
If message IFB080E continues to arrive and the occurrence of the expected messages thus exceeds
the infrequent, frequent or critical threshold, the automation routine AOFRSA01 searches for defined
commands without selection option and to selection option INFR, FREQ or CRIT to be issued.
Because no command is defined with any selection option, only the defined command with no selection
option is selected and issued, as in the previous case.
Message AOF589I, AOF588I or AOF587I is issued in cases, where an infrequent, frequent or critical
threshold has been exceeded. These messages indicate that an infrequent, frequent or critical threshold
action has been processed.
If the recovery processing for a LOGREC data set is still in progress when an expected error message
arrives, the following message is issued:
The recovery process is considered to be finished, when message IFC001I arrives telling that the LOGREC
data set has been initialized.
AOFRSA03
Purpose
You can use the AOFRSA03 automation routine to respond to SMF data set full or switch messages from
your system. AOFRSA03 issues commands from the configuration files to dump and clear the contents of
the SMF data set.
AOFRSA03 keeps track of incoming SMF data set messages and compares their occurrence with
predefined thresholds at infrequent, frequent, and critical levels. An exceeded threshold is used as the
option for selecting the appropriate commands according to the first field in the command entry of the
MVSESA/SMFDUMP entry/type pair in the configuration file. If no threshold is exceeded the commands
that are defined for the selection option ALWAYS are issued.
AOFRSA03 should be called from the NetView automation table.
Besides that kind of automation, SA z/OS also checks for full SMF data sets which were filled up while
SA z/OS was not active. For each data set where a dump is required a command is issued if the selection
option is set to 'ALWAYS'. &EHKVAR contains fully qualified SMF data set name.
Syntax
AOFRSA03
Restrictions
• Processing in AOFRASA03 is done if it is called from NetView automation table by one of the expected
messages: IEE362A, IEE262I, IEE391A or IEE392I.
• If AOFRASA03 was triggered by one of the above messages, then actions are only taken if the recovery
automation flag for SMFDUMP is on.
• Actions in AOFRSA03 are only taken if the recovery automation flag for SMFDUMP is on.
• Processing in AOFRSA03 is only done if it is called from the NetView automation table by one of the
expected messages: IEE362A, IEE262I, IEE391A or IEE392I.
Usage
Automation routine AOFRSA03 is intended to respond to the following messages:
Global Variables
&EHKVAR1
When defining the commands in the configuration file to dump and clear the contents of the SMF data
set, the variable &EHKVAR1 can be used for the name of the SMF data set. This variable is substituted
with the complete data set name by AOFRSA03 when message IEE391A or IEE392I is received. In
case of message IEE362A or IEE362I this variable is substituted with MANn, the second part of the
SMF data set name.
&EHKVAR2
When defining the commands in the configuration file to dump and clear the contents of the SMF data
set, the variable &EHKVAR2 can be used for the name of the SMF data set. This variable is substituted
with the complete data set name by AOFRSA03 when message IEE391A, IEE392I, IEE362A, or
IEE362I is received.
Examples
This example shows SMF data set processing when AOFRSA03 is called from the automation table.
The following entries in the NetView automation table are created automatically to issue the appropriate
automation routine when one of the expected messages arrives:
COMMANDS HELP
------------------------------------------------------------------------------
Thresholds Definition
Command ===>
Resource : MVSESA.SMFDUMP
Assume that the following message arrives the first time on one day:
Because none of the defined thresholds has been exceeded, the AOFRSA03 automation routine searches
for commands to issue that have been defined without a selection option or with the selection option
ALWAYS. With the control file shown above the command MVS S SMFDUMP1,DA='&EHKVAR2' is
selected. Before issuing this command, the variable &EHKVAR2 is substituted with the data set name
from the received message, resulting in MVS S SMFDUMP1,DA='SYS1.AOC1.MAN3'.
If message IEE391A continues to arrive and the occurrence of the expected messages thus exceeds the
infrequent, frequent or critical thresholds, the AOFRSA03 automation routine searches for commands to
issue that have been defined without a selection option or with selection option INFR, FREQ or CRIT.
Because no command has been defined with a selection option, only the command that has been defined
without a selection option is selected and issued, as in the previous case.
Message AOF589I, AOF588I or AOF587I is issued in cases where an infrequent, frequent or critical
threshold has been exceeded. These messages indicate that an infrequent, frequent or critical threshold
action has been processed.
AOFRSA08
Purpose
You can use the AOFRSA08 automation routine to respond to syslog being queued messages by starting
an external writer to save the syslog that was queued.
AOFRSA08 keeps track of the incoming syslog queued messages and compares there occurrence with
predefined thresholds at infrequent, frequent, and critical levels. An exceeded threshold is used as the
option for selecting the appropriate commands according to the first field in the command entry of the
MVSESA/SYSLOG entry/type-pair in the configuration file. If no threshold is exceeded the commands that
are defined for the selection option ALWAYS are issued.
AOFRSA08 should be called from the NetView automation table.
Syntax
AOFRSA08
Restrictions
• Processing in AOFRSA08 is only done if it is called from NetView automation table by the expected
message IEE043I.
• Actions are only taken in AOFRSA08 if the recovery automation flag for SYSLOG is on and if the status of
JES is UP or HALTED.
Usage
Automation routine AOFRSA08 is intended to respond to the message:
IEE043I A SYSTEM LOG DATA SET HAS BEEN QUEUED TO SYSOUT CLASS class
which indicates that the system closed the system log (SYSLOG) data set and queued the data set to a
SYSOUT class.
The commands to issue are selected from the command entry of the MVSESA/SYSLOG entry/type-pair in
the configuration file.
If no threshold is reached when one of the expected messages arrive, all commands that are defined for
entries without a selection option and for the selection option ALWAYS are selected.
If the threshold at the infrequent level is exceeded, all commands that are defined for entries without a
selection specification option and for entries with the selection option INFR are selected.
In the same way, a level of frequent corresponds to the selection option FREQ and a level of critical
corresponds to the selection option CRIT.
Examples
This example shows a sample scenario for SYSLOG processing:
The following entry in the NetView automation table is created automatically to issue AOFRSA08 as
response to the incoming IEE043I message:
IF MSGID = 'IEE043I'
THEN
EXEC(CMD('AOFRSA08')ROUTE(ONE %AOFOPRECOPER%));
COMMANDS HELP
------------------------------------------------------------------------------
Thresholds Definition
Command ===>
Resource : MVSESA.SYSLOG
Assume that the following message arrives the first time for one day:
IEE043I A SYSTEM LOG DATA SET HAS BEEN QUEUED TO SYSOUT CLASS A
Because none of the defined thresholds is exceeded, the automation routine AOFRSA08 searches for
defined commands without selection option and to selection option ALWAYS to be issued. With the
control file shown above the command MVS S SAVELOG is selected.
If message IEE043I continues to arrive and the occurrence of the expected messages thus exceeds
the infrequent, frequent or critical threshold, the automation routine AOFRSA08 searches for defined
commands without selection option and to selection option INFR, FREQ or CRIT to be issued.
Because no command is defined with any selection option, only the defined command with no selection
option is selected and issued, as in the previous case.
Message AOF589I, AOF588I or AOF587I is issued in cases, where an infrequent, frequent or critical
threshold has been exceeded. These messages indicate that an infrequent, frequent or critical threshold
action has been processed.
AOFRSA0C
Purpose
You can use the AOFRSA0C automation routine to respond to a SVC dump taken to a dump data set
message by issuing commands from the configuration file to format the dump, to clear the dump data
sets, or to prevent further dumping. The commands to issue are taken from the MVSESA/MVSDUMP
and MVSESA/MVSDUMPTAKEN entry/type-pairs and selected according to the frequency of the incoming
messages and the thresholds defined in the automation policies. The first field in the command entry
gives detailed criteria to select the appropriate commands from the configuration file.
AOFRSA0C should be called from the NetView automation table.
Syntax
AOFRSA0C
Restrictions
• Actions in AOFRSA0C are only taken if the recovery automation flag for MVSDUMP is on.
• Processing in AOFRSA0C is only done if it is called from NetView automation table by one of the
expected messages IEA611I or IEA911E.
Usage
Automation routine AOFRSA0C is intended to respond to the following messages:
FOR ASIDS(id,id,...)
...
These indicate that the system wrote a complete or partial SVC dump to an automatically allocated or
pre-allocated dump data set on a direct access storage device or a tape volume.
AOFRSA0C keeps track on the reception of these messages and compares the frequency of the incoming
messages with predefined thresholds of infrequent, frequent and critical level, where the thresholds
to MVS component MVSDUMP are considered. The commands to issue are selected according to the
frequency of the incoming messages.
If no threshold is reached, all commands to entries with no selection option and to selection option
ALWAYS are selected. If the threshold at level infrequent is exceeded, all commands to entries with
no selection option and to selection option INFR are selected. In the same way a level of frequent
corresponds to selection option FREQ and a level of critical corresponds to selection option CRIT.
The commands to issue are taken from MVSESA/MVSDUMP entry/type-pair of the configuration file with
respect to the frequency of the incoming of these messages.
If AOFRSA0C has been triggered by receipt of message IEA911E, all the commands from the MVSESA/
MVSDUMPTAKEN entry/type-pair of the configuration file are also selected and issued, as long as the
critical threshold has not been exceeded.
After dump processing has been done, AOFRSA0C further monitors the frequency of messages IEF611I
and IEF911E in intervals of 15 minutes. As soon as the frequency falls below the infrequent threshold, all
the commands of MVSESA/MVSDUMPRESET entry/type-pair are issued.
Global Variables
When defining the commands in the configuration file to handle the SVC dump data set, the variables
&EHKVAR1 to &EHKVAR6 can be used to be substituted by variable contents of message IEA611I
or IEA911E. The variables &EHKVAR1 to &EHKVAR6 are not available in command entries of type
MVSDUMPRESET. These variables are substituted as follows:
&EHKVAR1
The dsname of IEA611I or suffix of SYS1.DUMPnn in IEA911E
&EHKVAR2
The data set name
&EHKVAR3
The dump ID
&EHKVAR4
The job name
&EHKVAR5
The ID of address space
&EHKVAR6
The dump type (PARTIAL or COMPLETE)
Examples
This example shows the use of automation routine AOFRSA0C in a sample context:
An entry in the NetView automation table is used to issue AOFRSA0C when one of the expected messages
arrives:
Three threshold levels are defined in the automation policy for MVS component MVSDUMP:
Command ===>
PF1=Help PF2=End PF3=Return PF6=Roll
PF12=Retrieve
The MESSAGES/USER DATA automation policy item of the MVSESA/MVSDUMP entry/type-pair contains
the following command entries for the message ID MVSDUMP with selection options at different levels:
'MVS DD CLEAR,DSN=&EHKVAR1'
'MVS DD ALLOC=ACTIVE'
As long as no threshold is exceeded at receipt of one of the IEA611I and IEA911E messages, no action is
taken.
If dumps have been taken more often than defined with the infrequent threshold, the command MVS DD
ALLOC=ACTIVATE, specified in entry type MVSDUMP, is issued. This makes sure that automatic dump
data set allocation is enabled. In cases when the dump has been written to a pre-allocated SYS1.DUMP
data set, additionally the data set is cleared using the command MVS DD CLEAR,DSN=&EHKVAR1,
specified in the entry type MVSDUMPTAKEN. Variable &EHKVAR1 is substituted by the numeric suffix of
the SYS1.DUMP data set.
The same processing is done in cases when the incoming dump data set messages exceeds the frequent
level.
As soon as the critical threshold is exceeded, the automation routine stops clearing pre-allocated
SYS1.DUMP data sets.
After commands having been issued by the automatic processing of dump data sets, automation routine
AOFRSA0C checks every 15 minutes whether the infrequent threshold is satisfied again. As soon as
this situation is reached, automatic dump data set allocation is enabled again by command MVS DD
ALLOC=ACTIVE, as defined in entry type MVSDUMPRESET.
AOFRSA0E
Purpose
Automation routine AOFRSA0E deletes WTORs from SA z/OS display capabilities when they are replied to
or canceled.
Syntax
,
AOFRSA0E
id
Parameters
id
The reply identifiers for cancelled messages.
Restrictions
Processing in AOFRSA0E is only done if it is called from NetView automation table by message IEE400I or
IEE600I or if one of these messages are passed by parameter.
Usage
Automation routine AOFRSA0E is intended to respond to the following messages:
Message IEE400I says that the system cancelled messages because the issuing task ended or specifically
requested that the messages be cancelled. Message IEE600I notifies all consoles that received a
message that the system accepted a reply to the message.
As well AOFRSA0E can extract the identifiers of the messages to delete from passed parameters.
Example
The following example shows how to issue AOFRSA0E from the NetView automation table:
AOFRSA0G
Purpose
You can use the AOFRSA0G automation routine to respond to messages reporting buffer shortage of
the action message retention facility (AMRF) by issuing commands from the configuration file to process
buffer shortage automation.
In the case of an incoming buffer shortage message, the commands to issue are taken from the MVSESA/
AMRFSHORT entry/type-pair with the selection option PASS1 and reissued at 1 minute intervals with an
incremented pass count.
In the case of a buffer full message, the commands to issue are taken from the MVSESA/AMRFFULL
entry/type-pair. If buffer shortage relieved is reported, the commands that are defined for the MVSESA/
AMRFCLEAR entry/type-pair are selected.
AOFRSA0G should be called from the NetView automation table.
Syntax
AOFRSA0G
Restrictions
• Actions are only taken in AOFRSA0G if the recovery automation flag for AMRF is on.
• Processing of system messages in AOFRSA0G is only done if it is called from NetView automation table
by message IEA359E, IEA360A or IEA361I.
Usage
Automation routine AOFRSA0G is intended to respond to the messages:
IEA359E and IEA360A reports buffer shortage of the buffer area for immediate action messages, non-
critical and critical eventual action messages and WTOR messages. IEA361I indicates the reduction of the
number of retained action messages so that the buffer is now less than 75% full.
If AOFRSA0G has been triggered on receipt of message IEA359E the commands to issue are taken
from entry/type-pair MVSESA/AMRFSHORT, starting at selection option PASS1 and continuing with
incremented selection options in 1 minute intervals until message IEA361 reports that buffer shortage
has relieved. After arriving the maximal used selection option for a defined command processing restarts
at selection option PASS1.
If AOFRSA0G has been triggered on receipt of message IEA360A all commands from entry/type-pair
MVSESA/AMRFFULL are issued.
If AOFRSA0G has been triggered on receipt of message IEA361I all commands from entry/type-pair
MVSESA/AMRFCLEAR are issued.
Example
The following example shows a sample scenario for AMRF shortage processing:
Entries in the NetView automation table are used to issue AOFRSA0G when message IEA359E, IEA360E
or IEA361I arrives:
IF MSGID = 'IEA359E'
THEN
EXEC(CMD('AOFRSA0G')ROUTE(ONE %AOFOPRECOPER%));
IF MSGID = 'IEA360A'
THEN
EXEC(CMD('AOFRSA0G')ROUTE(ONE %AOFOPRECOPER%));
IF MSGID = 'IEA361I'
THEN
EXEC(CMD('AOFRSA0G')ROUTE(ONE %AOFOPRECOPER%));
To specify how to respond to message IEA359E and IEA361I, the following command definitions are
made in the automation policy under the entry/type-pair MVSESA/AMRFFULL and MVSESA/AMRFCLEAR:
IEA360A SEVERE BUFFER SHORTAGE FOR RETAINED ACTION MESSAGES - 100% FULL
arrives, AOFRSA0G is issued by the shown statement in the NetView automation table, which causes the
command CONTROL M,AMRF=N to be issued to clear the AMRF buffers.
After AMRF buffer shortage is relieved, the incoming message
AOFRSD07
Purpose
You can use the AOFRSD07 automation routine to respond to a JES2 not dormant message during JES2
shutdown by issuing commands for resources that are not drained.
The commands to issue are taken from the automation policy item JES2 DRAIN of application JES2.
Additionally AOFRSD07 calls AOFRSD0F which outputs a list of all active jobs and started tasks and a list
of all resources not yet drained.
AOFRSD07 should be called from the NetView automation table.
Syntax
AOFRSD07
Restrictions
Processing in AOFRSD07 is only done if:
• It is called from NetView automation table by JES2 message HASP607
• The terminate automation flag for JES2 is on
• JES2 is in shutdown progress
Usage
Automation routine AOFRSD07 is intended to respond to message
which indicates in case the P JES2 command was entered to withdraw JES2 from the system that not all
of JES2's functions have completed.
To find out all resources not drained, the response to JES2 command DU,STA is processed. For each
resource in status DRAINING the corresponding command from the automation policy item JES2 DRAIN
for this resource type to force drain is issued. Resources in status ACTIVE are first stopped with JES2
command P resource, before the command from the automation policy item to force drain is issued.
Resources in status INACTIVE are only stopped with JES2 command P resource.
In cases, where the automation is unable to issue actions on not yet drained resources, JES2 is set to
status STUCK and a message is issued which tells that an operator action is required. Those situations
occur if no command is specified in automation policy item JES2 DRAINED of JES2 to drain a resource or
if a not yet drained resource is in an unknown status
AOFRSD09
Purpose
Automation routine AOFRSD09 is used for JES2 spool recovery. It is called by AOFRSD01 via a timer every
retry interval to monitor spool utilization of JES2 and to successive issue the recovery commands of policy
item JES2 SPOOLSHORT or JES2 SPOOLFULL.
For this purpose AOFRSD09 processes the following steps:
• AOFRSD09 issues the JES2 command D SPOOL to obtain the current spool usage.
• AOFRSD09 re-evaluates the target of recovery process based on the actual warning threshold for TG
and the buffer value from the configuration file.
• If the recovery target has not yet been achieved and the current JES2 subsystem is responsible for
the spool recovery, AOFRSD09 increments the pass count and issues the appropriate commands from
the configuration file. In a shared JES2 environment, where all JES2 subsystems receive a copy of the
spool shortage message, AOFRD09 determine the appropriate JES2 subsystem for spool recovery. To
do this, AOFRD09 compares the list of cpuids, as defined in configuration file, with the response to
JES2 command D MEMBER,STATUS=ACTIVE. The first active cpuid on the list is considered to be the
appropriate JES2 subsystem for spool recovery.
• In case the spool shortage problem has already been relieved, AOFRSD09 stops the recovery process
and sets a timer to reset the pass count for the recovery commands after the reset interval.
You define recovery commands and configuration parameters for JES2 recovery processing, such as
buffer value, reset interval and cpuid list, using automation policy item JES2 SPOOLSHORT for spool
shortage recovery processing and JES2 SPOOLFULL for spool full recovery processing.
For further information about the JES2 SPOOLSHORT and JES2 SPOOLFULL automation policy items see
IBM Z System Automation Defining Automation Policy.
Syntax
AOFRSD09 subsystem recovery type
Parameters
subsystem
The subsystem name of JES2. This parameter is required.
recovery type
This parameter is used to distinguish between a JES2 spool shortage and a JES2 spool full condition.
This parameter is required.
SHORT
The automatic recovery from a JES2 spool shortage condition is to be processed.
FULL
The automatic recovery from a JES2 spool full condition is to be processed.
Restrictions
• Processing of recovery commands in AOFRSD09 is only done if the recovery automation flag for JES2 is
on. Otherwise the recovery process is suspended and the pass count for selection recovery commands
from the configuration file is not incremented.
• Automation routine AOFRSD09 should be processed by JESOPER. If it is called on another task it is
routed back to JESOPER.
• Processing in AOFRSD09 is only done if the specified type of spool recovery process has been initiated
by automation routine AOFRSD01.
• During a SPOOLFULL recovery condition, the processing for SPOOLSHORT recovery is suspended.
Usage
The recovery commands to issue are selected from the command entry of policy item JES2 SPOOLSHORT
or JES2 SPOOLFULL. A pass count is used as selection option and incremented at each successive
processing of automation routine AOFRSD09. At initialization of the recovery process, the pass count is
set to value PASS1 by automation routine AOFRSD01.
If pass processing runs out of defined recovery commands before the spool shortage condition is
resolved, AOFRSD09 re-executes the recovery sequence from PASS1. You can change this behavior
by setting the appropriate advanced automation option at start up of System Automation. You can use
the AOFSPOOLSHORTCMD variable (for SPOOLSHORT conditions) and the AOFSPOOLFULLCMD variable
(for SPOOLFULL conditions) to tell automation routine AOFRSD09 to stop recovery attempts when all
commands have been executed and to issue message AOF294I to inform the operator that manual
intervention is required in order to resolve the spool condition. For more information about advanced
automation options refer to “Read/Write Variables” on page 204.
Global Variables
When defining the commands in the SPOOLFULL or SPOOLSHORT processing panel of the configuration
file to handle the recovery, the variables &EHKVAR1 and &EHKVAR2 can be used to be substituted by
variable contents. Variable &EHKVAR1 is substituted by the current spool utilization and &EHKVAR2
contains the recovery target.
AOFRSD0F
Purpose
Automation routine AOFRSD0F is used by AOFRSD07 for drain processing prior to JES2 shutdown. Every
shutdown delay interval, AOFRSD0F displays all JES2 resources not yet drained. For this purpose it
scans the response to JES2 command DA,S for executing tasks, the response to JES2 command DA,J for
executing jobs and the response to JES2 command DU,STA for started devices or lines not yet drained and
displays the result in a message.
Syntax
AOFRSD0F subsystem
Parameters
subsystem
The subsystem name of JES2.
Restrictions
Processing in AOFRSD0F is only done if the following conditions are met:
Usage
This automation routine is performed as part of the SHUTDOWN processing.
Examples
This example shows a sample scenario for JES2 drain processing prior to JES2 shutdown.
The following statement shows how AOFRSD07 is issued from the NetView automation table by JES2
message
Assume the following drain processing specifications in automation policy item JES2 DRAIN:
COMMANDS HELP
------------------------------------------------------------------------------
JES2 DRAIN Specification Line 00000001
Command ===> Scroll ===> PAGE
The list of commands to force drain of JES2 resources are passed to the JES2/FORCEDRAIN entry/type-
pair in the configuration file and can be displayed with the DISPACF command:
Assume that during a shutdown of JES2 message $HASP607 arrives, indicating that not all of JES2's
functions have completed and that JES2's response to command $DU,STATUS is:
Automation routine AOFRSD07 first issues JES2 command $PLINE1 to stop the line and then issues JES2
command $E, according to the policy specifications FOR entry/type-pair JES2/FORCEDRAIN.
Then automation routine AOFRSD0F is executed every shutdown delay interval, to list all JES2 resources
not drained.
AOFRSD0G
Purpose
You can use the AOFRSD0G automation routine to drain JES2 resources prior to JES2 shutdown.
AOFRSD0G issues commands to drain the initiators, offloader tasks, lines, printers, punches and readers,
depending on which resources are listed and enabled in the automation policy item JES2 DRAIN of
application JES2.
AOFRSD0G is used by the DRAINJES command.
Syntax
AOFRSD0G subsystem
Parameters
subsystem
The subsystem name of JES2.
Restrictions
Processing in AOFRSD0G is only done if the subsystem is of type JES2.
Usage
For all resources enabled to initial drain in automation policy item JES2 DRAIN of application JES2 the
JES2 command P is issued.
Example
Call AOFRSD0G JES2 to stop all resources enabled in JES2 DRAIN for init drain.
These resources can be listed with command DISPACF JES2 INITDRAIN.
AOFRSD0H
Purpose
The AOFRSD0H automation routine is used for JES2 spool recovery. It is called by AOFRSD09 with a timer
command after the reset interval and cleans up the pass counter for the pass processing of the recovery
commands of the configuration file.
Syntax
AOFRSD0H subsystem recovery type
Parameters
subsystem
The subsystem name of JES2. This parameter is required.
recovery type
This parameter is used to distinguish between a JES2 spool shortage and a JES2 spool full condition.
This parameter is required.
SHORT
The pass counter for spool shortage recovery processing is to be reset.
FULL
The pass counter for spool full recovery processing is to be reset.
Restrictions
• The AOFRSD0H automation routine should be processed by JESOPER. If it is called on another task it is
routed back to JESOPER.
• Each recovery action during the reset interval
• AOFRSD0H is only scheduled after the reset interval if no new recovery action of the corresponding type
SHORT or FULL has been taken during this time.
• The pass counter for spool full recovery processing is reset by AOFRSD0H after the reset interval, even
if spool short recovery is still in progress.
Examples
The following example shows a sample scenario for JES2 spool recovery processing:
The following entries in the NetView automation table are used to issue the AOFRSD01 automation
routine from the NetView automation table, when one of the expected messages arrives:
The SPOOLSHORT recovery is configured using the automation policy item JES2 SPOOLSHORT as shown
in Figure 44 on page 194.
COMMANDS
HELP
------------------------------------------------------------------------------
JES2 SPOOLSHORT Specification Line 00000001
Command ===> Scroll ===> PAGE
Because no smfids are defined, the own JES2 subsystem is responsible for JES2 spool recovery
processing. Editing JES2 SPOOLSHORT CMDS policy allows you to enter the pass recovery commands
that are defined as shown in the response panel to command DISPACF JES2.
Assume that a JES2 spool shortage problem is reported by the following message:
This issues the AOFRSD01 automation routine by the appropriate NetView automation table entry.
AOFRSD01 initiates the JES2 SPOOLSHORT recovery process and sets an every timer to call the pass
processing routine by issuing AOFRSD09 JES2 SHORT every 5 minutes, as defined in the customization
dialog for SPOOLSHORT processing, see Figure 44 on page 194.
AOFRSD09 redetermines the actual spool usage, compares it with the defined TGWARN of 80% and
calculates the target of recovery as difference of TGWARN and the buffer value resulting in a value of
75. If this value is exceeded by the actual spool usage, all recovery commands with the PASS1 selection
option in the configuration file for the SPOOLSHORT recovery type are issued. After the retry interval of 5
minutes, AOFRSD09 is reissued by the timer.
If AOFRSD09 now determines that the JES2 spool shortage problem has been relieved, it stops recovery
processing and sets a timer to issue AOFRSD0H JES2 SHORT after the reset interval of 15 minutes.
If none of the expected JES2 messages arrives by the end of the reset interval, the AOFRSD0H
automation routine resets the pass count to 1 so that the next SPOOLSHORT recovery process issues
recovery commands beginning again at PASS1 selection option.
HASP099
Restrictions
Shutdown processing of the JES2 message HASP099 is only done if:
• Shutdown automation for JES2 is on
• JES2 is in the process of being shut down
Usage
The ISSUEACT command responds to message:
This indicates that all JES2 job processors have become dormant, and no JES2 RJE lines are active.
INGRMJSP
Purpose
You use the INGRMJSP automation routine to monitor JES2 spool file usage. It queries the spool usage
to obtain the current spool usage and the warning level. If necessary it calls the INGRCJSP automation
routine for JES2 spool recovery processing.
The INGRMJSP command also updates the SPOOL entry in the status display facility (SDF) every time it is
called.
Syntax
INGRMJSP
Restrictions
Monitoring by INGRMJSP is only done if it has been defined as the monitor command for an appropriate
monitor resource in the customization dialog.
Usage
The INGRMJSP monitoring routine queries the spool usage by issuing the D SPOOLDEF,TGSPACE
command to obtain the current spool usage and the warning level as set up by the JES2 system
programmer:
• If the spool file is full, INGRMJSP sets the health status to CRITICAL and calls INGRCJSP.
• If the spool usage is above the warning level, INGRMJSP sets the health status to WARNING and calls
INGRCJSP.
Depending on the spool full percentage and the warning level, one of the following return codes is set:
Example
To create a spool usage monitor in the customization dialog you must define the following items:
1. A monitor resource (MTR) with INGRMJSP as the monitoring command. For example, if you create
a monitor resource called JES2SPOOL with the short description JES2 Spool Monitor, specify the
following information in the MONITOR INFO policy item:
The monitor has a HasParent relationship to the corresponding JES2 resource because it only makes
sense to monitor the spool usage when JES2 is active.
3. The following recovery actions in the HEALTHSTATE policy item:
State Command
WARNING INGRCJSP
CRITICAL INGRCJSP
INGRCJSP (AOFRSD01)
Purpose
You can use the INGRCJSP automation routine for JES2 spool recovery processing. It responds to JES2
spool shortage messages by initiating the recovery process for JES2 spool shortage. It responds to JES2
spool full messages by initiating the recovery process for JES2 spool full to downgrade the problem of
excessive spool usage.
The INGRCJSP routine does the following:
• Makes linear and first order predictions of spool usage, based on actual and historical values.
• Posts the spool status to the status display facility (SDF).
• Determines the target of recovery processing as the difference between the actual warning threshold for
track groups and the buffer value from the configuration file. The spool shortage condition is considered
as relieved if the recovery process achieves this target.
• Initiates pass processing to execute the recovery commands of the configuration file, as defined with
the JES2 SPOOLSHORT or JES2 SPOOLFULL policy item. The pass processing itself is done by the
AOFRSD09 automation routine, which is issued every retry interval. The retry interval is taken from the
configuration file.
You define recovery commands and configuration parameters for JES2 recovery processing, such as
buffer value and retry interval, using automation policy item JES2 SPOOLSHORT for spool shortage
recovery processing and JES2 SPOOLFULL for spool full recovery processing.
For further information about the JES2 SPOOLSHORT and JES2 SPOOLFULL automation policy items see
IBM Z System Automation Defining Automation Policy.
INGRCJSP should be called from the NetView automation table.
Syntax
INGRCJSP
Restrictions
• Processing in INGRCJSP is only done if it is called from NetView automation table by JES2 messages
HASP050 or HASP355.
• Message HASP355 is only processed if it reports a shortage of track groups (TG).
Usage
The INGRCJSP automation routine is intended to respond to the following messages:
HASP050 indicates that JES2 has a shortage of track groups and the current spool utilization exceeds
the current TGWARN value on this JES. TGNWARN is defined in the SPOOLDEF statement in the JES
initialization member and can be changed dynamically.
HASP355 indicates that a request for JES2 direct access spool space cannot be processed because all
available space has been allocated to JES2 functions or no spool volumes are available. Therefore the
recovery targets in this case are based on a figure of 100% spool utilization.
You should code TGWARN in the SPOOLDEF statement in the JES initialization member so that
SPOOLSHORT recovery is initiated before a SPOOLFULL condition is reached. If you do not do this the
recovery process may become unpredictable.
When resetting after a SPOOLFULL condition, the problem is downgraded to a SPOOLSHORT condition.
SA z/OS expects the SPOOLSHORT recovery that was previously running to activate and try to downgrade
the problem to an OK. Without the prior SPOOLSHORT recovery, the spool status remains in SPOOLSHORT
after a successful SPOOLFULL recovery.
The NetView automation table entries for JES2 messages must respect the one character prefix in front of
the message identifier of JES2 messages that identifies the issuing JES.
The spool status is posted to SDF under the SPOOL generic, with the name of the subsystem as its
specific name. To have these displayed on an SDF panel, you need status fields for xxxx.SPOOL, elements
1 through n, where n is the number of different subsystems that use the spool.
INGRTAPE
Purpose
INGRTAPE maintains tape status details under SDF. When SA z/OS detects an outstanding tape mount
request then it feeds the related message into SDF. If the request is not satisfied before the warning
interval has expired, the status will change to warning.
If the tape mount request is still not satisfied after the alert delay, the status will change to alert.
The tape mount request is deleted from SDF dynamically when the related tape is mounted or the
requesting job is canceled.
The routine INGRTAPE automation routine is used to visualize the pending tape mount requests within
SDF. Its behavior is based on the definitions in the 'Tape Attendance' policy entry. For information about
activating and customizing Tape attendance, refer to IBM Z System Automation Defining Automation
Policy.
Syntax
INGRTAPE
Usage
Automation routine INGRTAPE is intended to respond to the following messages: IEC501E, IEC501A,
IEC502E, IEC503I, IEC507D, IEC509A, IEC510D, IEC512I, IEC513D, IEC514D, IEC701D, IEC702I,
IEC703I, IEC704A, IEC706I, IEC707I, IEC708I, IEC708D, IEC709I, IEC710I, IEC711I, IEC712I,
IEC713I, IEC714I, IEC715I, IEF233A, IEF233D,IEF234E, IEF455D, IAT5210, TMS001, TMS002,
TMS0012
Restrictions
The monitoring of tape mounts is only enabled when activated via the Customization Dialogs.
Actions are only taken in INGRTAPE if the recovery automation flag is on for the message in question. The
flag check is performed against minor resource MVSESA.messageID.
INGRX711
Purpose
Automation routine INGRX711 can reformat the primary and alternate LOGR CDSs with an increased
DSEXTENT parameter whenever the system reports a directory shortage.
Syntax
INGRX711
Usage
Automation routine INGRX711 is intended to respond to messages IXG261E and IXG257I.
Restriction
Automation must be allowed for the minor resource names: LOGGER and CDS.
INGRX740
Purpose
You can use the INGRX740 automation routine to respond to some syslog related system messages by
issuing defined recovery actions from the automation control file to restart the syslog or to assign the
syslog as a hardcopy medium.
INGRX740 keeps track of the incoming IEE037D syslog inactive message and compares its occurrence
with predefined thresholds for the MVS component minor resource, LOG. As long as the critical threshold
level is not exceeded, a recovery action related to a previously received system message is issued.
If one of the messages IEE043I, IEE533E or IEE769E is received prior to the IEE037D message that is
currently being processed, the commands that have been defined for IEE043I, IEE533E or IEE769E in the
MVSESA/msgid entry/type-pair of the configuration file are issued. If none of these messages has been
received prior to the IEE037D message that is currently being processed, the command MVS WRITELOG
START is issued.
The recovery routine INGRX740 also responds to an incoming IEE041I message if this indicates that the
SYSLOG data set is available for use as a hardcopy log. Commands are issued in response to message
IEE041I that are defined in the MVSESA/IEE041I entry/type-pair of the configuration file. An appropriate
command in this case would be MVS VARY SYSLOG,HARDCPY to have the SYSLOG receive the hardcopy
log.
INGRX740 should be called from the NetView automation table.
Syntax
INGRX740
Usage
Automation routine INGRX740 responds to the following messages:
Example
This example shows a sample scenario for system log failure recovery.
The following entry in the NetView automation table is provided by SA z/OS to issue INGRX740 in
response to incoming messages IEE043I and IEE037D:
Assume that the following threshold levels are defined in the automation policy for MVS component minor
resource, LOG.
COMMANDS HELP
------------------------------------------------------------------------------
Thresholds Definition
Command ===>
Resource : MVSESA.LOG
Assume that a command is defined for message IEE043I in the automation policy item MESSAGES/USER
DATA of MVS components, as shown in the following figure.
COMMANDS HELP
------------------------------------------------------------------------------
CMD Processing Row 1 to 4 of 20
Command ===> SCROLL===> PAGE
Assume that the following messages arrive the first time for one day, while the Job Entry Subsystem is up
and running and the recovery automation flag for the MVS component minor resource LOG has not been
switched off:
IEE043I A SYSTEM LOG DATA SET HAS BEEN QUEUED TO SYSOUT CLASS 1
IEE037D LOG NOT ACTIVE
Because IEE043I has been received prior to message IEE037D and the critical threshold that has been
defined for message IEE037D has not been exceeded, the command that has been defined for message
IEE043I is issued in response to message IEE037D.
You must ensure that the names of any global variables you create do not clash with SA z/OS external or
internal global variable names. You should check the following tables before creating any global variables
of your own.
Read-Only Variables
The values of these variables are used by SA z/OS internally. They can be read but must not be changed
by user REXX routines.
AOFAOCCLONEx Where x either does not exist See the description of the
(AOFAOCCLONE) or is a value from System policy object in IBM
1 through 9 or A through Z. The Z System Automation Defining
AOFAOCCLONEx global variables contain Automation Policy .
the values specified for the &AOCCLONEx.
variables for this system.
AOFCOMPL Contains YES if initialization is complete.
AOFDEBUG Contains a REXX trace setting to be used
globally.
AOFINITIALSTARTTYP Contains the value 'IPL' or 'RECYCLE'
depending on whether SA z/OS has been
started the first time after an IPL or after a
NetView recycle.
AOFJESPREFX The command prefix for the primary
scheduling subsystem.
AOFPFP Contains the domain ID of the primary See "SDF FOCALPOINT
focal point (PFP). Policy Item" in IBM Z
System Automation Defining
Automation Policy.
AOFSYSPLEX Contains the name of the physical sysplex. See the 'Sysplex' column on
the INGAMS panel.
AOFSYSPLEXGROUP Contains the name of a GRP policy entry The GROUP INFO panel of
with group type SYSPLEX as defined in the the customization dialog. See
customization dialog. the 'SAplex' column on the
INGAMS panel.
Read/Write Variables
Table 26 on page 205 lists the common global variables that can be user-defined. You can set them in
your startup exit to change the way that SA z/OS behaves. These variables should be set only once for an
SA z/OS system. You can enable or disable advanced automation options (AAOs) by changing the settings
of the global variables in your NetView stylesheet. For example:
******************************************************
* System Automation AAO CGlobals
******************************************************
COMMON.AOFCNMASK = 290C0D0E0F101518
COMMON.INGREQ_ORIGINATOR = 1
COMMON.AOFRESTARTALWAYS = 0
COMMON.AOFSMARTMAT = 0
AOF_AAO_SDFPFP_ROOT.* User-defined Defines the static root names of the primary focal
point. For more information, see "Restrictions and
Limitations" of the SDFTREE command in IBM Z
System Automation Programmer's Reference.
When this variable is used, the
AOF_AAO_SDFPFP_ROOT.0 variable must exist and
defines the number of adjacent globals.
The value of an adjacent global can be the name of
a single root name or a list of root names that are
separated by blank characters.
The globals are evaluated only when the primary
focal point and the backup focal point are updated in
parallel.
left(opid(),8)||right(opid(),8),
||left(aofsysname,4)||right(aofsysname,4),
||left(applid(),8)||right(applid(),8),
||'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$Ý#@_!?',
||aofcnmask_extended
Where
• opid() is a function that returns the OST task name.
• aofsysname is a common global that stores the
system name.
• applid() is a function that returns VTAM LU name.
• aofcnmask_extended is an optional common global
that can store an additional user-defined identifier
(see AOFCNMASK_EXTENDED).
The default for AOFCNMASK is 290C0D0E0F101718.
X'29' selects character A in position 41, X'0C' through
X'10' selects the last five characters of the opid in
positions 12 to 16, X'17' and X'18' select the last two
characters of the sysname in positions 23 and 24.
If AOFCNMASK is null, AOCGETCN attempts to obtain
a unique extended MCS console after a 1 minute
interval, followed by a two minute interval and so forth
for a maximum of 5 passes (15 minutes elapsed from
the initial invocation of the command).
Tailoring AOFCNMASK requires you to ensure that it
consists of an even number of characters, because
every two characters represent one hexadecimal
number. Otherwise the generation of unique console
names does not work.
For example, with
AOFCNMASK: 2A01020304055455
AOFDEFAULT_TARGET User-defined Sets a default for the TARGET parameter for all
commands where this parameter is used.
AOFDESCA 010000100000 Descriptor code for action messages
1000
AOFDESCD 010000100000 Descriptor code for decision messages
1000
AOFDESCE 001000100000 Descriptor code for eventual action messages
1000
AOFDESCI 000001100000 Descriptor code for informational messages
1000
AOFDESCW 100000100000 Descriptor code for wait messages
1000
AOFEXPLAIN_USER User-defined The EXPLAIN command accepts this variable to
include help support for customer installation
supplied terms. It can hold one or more pairs of term/
help panel specifications separated by a blank. If the
specified status in the EXPLAIN command is not a
valid SA z/OS status, the command routine checks
whether it is an installation defined term. If so, the
associated help panel is displayed.
AOFINITREPLY hh:mm:ss The initial reply AOF603D is issued and automatically
responded after hh:mm:ss.
00:02:00 (2 minutes) is the default setting.
AOF_INIT_SYSCONID User-defined This variable contains the SYSCONID that is used for
valid value WTOs and WTORs that are issued by SA z/OS during
initialization.
The default is blank.
AOFRMTCMDWAIT See NetView Contains the installation wait time when RMTCMD is
RMTCMD used for communication.
60 seconds is the default setting for RMTCMD.
INGCICS_CORRWAIT User-defined The number of seconds that INGCICS waits for output
numeric value from a CICS transaction. If not specified, INGCICS
uses a default CORRWAIT (CCDEF) value.
INGIMS_CORRWAIT User-defined The number of seconds that INGIMS waits for output
numeric value from an IMS command. If not specified, INGIMS uses
the default CORRWAIT (CCDEF) value.
INGOPC_MULTIPLIER 1 to n This is used in conjunction with AOFRMTCMDWAIT
and AOFRPCWAIT to determine how long to wait
before giving up.
INGPAC_SHOWNOLIMIT 1 Pacing gates that have a concurrency limit of NOLIMIT
are always shown on the INGPAC display. This is the
default.
0 Pacing gates that have a concurrency limit of NOLIMIT
are not shown on the INGPAC display.
INGRAITF_WAIT User-defined The number of seconds that the INGRAITF routine
numeric value waits.
INGREQ_ORIGINATOR 1 Indicates that SA z/OS assigns individual originator
IDs for each operator issuing an INGREQ command.
0 All operators are grouped under originator ID
OPERATOR.
0 is the default setting.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
DISPMTR_COLUMNS Specifies the panel column layout of the DISPMTR command. DISPMTR
This is a stem where:
• DISPMTR_COLUMNS.0 contains the number of elements
• DISPMTR_COLUMNS.n contains the definition of the n-th column
Each column definition is a blank separated list of tokens in the
sequence:
• prefix is the prefix indicator of the column which can be:
I when the column is 'immovable' which implies 'prefixed'
P when the column is 'prefixed' for horizontal scrolling
F when the column is 'floating' (that is, scrolled)
- when the column is hidden
• sortorder is the sort order of the column which can be:
A when the column is sorted in ascending order
D when the column is sorted in descending order
- when the column is not sorted or hidden
• sortkey is the sort key of the column which can be:
1-n when the column is sorted in the n-th place
- when the column is not sorted or hidden
• columnname is the name of the column. These can be multiple
words. Because this name is used to reference the column you
cannot change column names.
TGLOBALS with that name are a user-specific setting and they
overwrite the installation defaults. It is recommended to save a
layout to TGLOBALS and then derive CGLOBALS when needed.
Invalid definitions are silently ignored.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
DISPSTAT_COLUMNS Specifies the panel column layout of the DISPSTAT command. DISPSTAT
This is a stem where:
• DISPSTAT_COLUMNS.0 contains the number of elements
• DISPSTAT_COLUMNS.n contains the definition of the n-th column
Each column definition is a blank separated list of tokens in the
sequence:
• prefix is the prefix indicator of the column which can be:
I when the column is 'immovable' which implies 'prefixed'
P when the column is 'prefixed' for horizontal scrolling
F when the column is 'floating' (that is, scrolled)
- when the column is hidden
• sortorder is the sort order of the column which can be:
A when the column is sorted in ascending order
D when the column is sorted in descending order
- when the column is not sorted or hidden
• sortkey is the sort key of the column which can be:
1-n when the column is sorted in the n-th place
- when the column is not sorted or hidden
• columnname is the name of the column. These can be multiple
words. Because this name is used to reference the column you
cannot change column names.
TGLOBALS with that name are a user-specific setting and they
overwrite the installation defaults. It is recommended to save a
layout to TGLOBALS and then derive CGLOBALS when needed.
Invalid definitions are silently ignored.
DISPTRG_WAIT Sets the WAIT parameter of the DISPTRG command to the specified DISPTRG
value.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
EVIRYDP0_COLUMNS Specifies the panel column layout of the INGIMS REQ=DEP INGIMS
command.
This is a stem where:
• EVIRYDP0_COLUMNS.0 contains the number of elements
• EVIRYDP0_COLUMNS.n contains the definition of the n-th column
Each column definition is a blank separated list of tokens in the
sequence:
• prefix is the prefix indicator of the column which can be:
I when the column is 'immovable' which implies 'prefixed'
P when the column is 'prefixed' for horizontal scrolling
F when the column is 'floating' (that is, scrolled)
- when the column is hidden
• sortorder is the sort order of the column which can be:
A when the column is sorted in ascending order
D when the column is sorted in descending order
- when the column is not sorted or hidden
• sortkey is the sort key of the column which can be:
1-n when the column is sorted in the n-th place
- when the column is not sorted or hidden
• columnname is the name of the column. These can be multiple
words. Because this name is used to reference the column you
cannot change column names.
TGLOBALS with that name are a user-specific setting and they
overwrite the installation defaults. It is recommended to save a
layout to TGLOBALS and then derive CGLOBALS when needed.
Invalid definitions are silently ignored.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
INGAMS_COLUMNS Specifies the panel column layout of the INGAMS command. INGAMS
This is a stem where:
• INGAMS_COLUMNS.0 contains the number of elements
• INGAMS_COLUMNS.n contains the definition of the n-th column
Each column definition is a blank separated list of tokens in the
sequence:
• prefix is the prefix indicator of the column which can be:
I when the column is 'immovable' which implies 'prefixed'
P when the column is 'prefixed' for horizontal scrolling
F when the column is 'floating' (that is, scrolled)
- when the column is hidden
• sortorder is the sort order of the column which can be:
A when the column is sorted in ascending order
D when the column is sorted in descending order
- when the column is not sorted or hidden
• sortkey is the sort key of the column which can be:
1-n when the column is sorted in the n-th place
- when the column is not sorted or hidden
• columnname is the name of the column. These can be multiple
words. Because this name is used to reference the column you
cannot change column names.
TGLOBALS with that name are a user-specific setting and they
overwrite the installation defaults. It is recommended to save a
layout to TGLOBALS and then derive CGLOBALS when needed.
Invalid definitions are silently ignored.
INGAUTO_INTERVAL Sets the default for the INTERVAL parameter of the INGAUTO INGAUTO
command.
INGEVENT_WAIT Sets the WAIT parameter of the INGEVENT command to the INGEVENT
specified value. The parameter specifies whether or not to wait until
the request is complete.
INGEXEC_RESP Sets the RESP parameter of the INGEXEC command to the specified INGEXEC
value.
INGEXEC_SELECT Sets the SELECT parameter of the INGEXEC command to the INGEXEC
specified value.
INGEXEC_TIMEOUT Sets the TIMEOUT parameter of the INGEXEC command to the INGEXEC
specified value.
INGEXEC_WAIT Sets the WAIT parameter of the INGEXEC command to the specified INGEXEC
value.
INGGROUP_WAIT Sets the WAIT parameter of the INGGROUP command to the INGGROUP
specified value. The parameter specifies whether or not to wait until
the request is complete.
INGHIST_MAX Sets the MAX parameter of the INGHIST command to the specified INGHIST
value.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
INGHIST_WIMAX Sets the WIMAX parameter of INGHIST command to the specified INGHIST
value.
INGIMS_CMDWAIT Sets the CMDWAIT parameter (the maximum wait time for a INGIMS
command to complete) of the INGIMS command to the specified
value.
INGIMS_REQ Sets the REQ parameter (the request to be issued to the IMS INGIMS
subsystem) of the INGIMS command to the specified value.
INGINFO_WAIT Sets the WAIT parameter of the INGINFO command to the specified INGINFO
value.
INGINFO_RSTAT Sets the RSTAT parameter of the INGINFO command to the specified INGINFO
value.
INGLKUP_TIMEOUT Sets the TIMEOUT parameter of the INGLKUP command to the INGLKUP
specified value.
INGLKUP_WAIT Sets the WAIT parameter of the INGLKUP command to the specified INGLKUP
value.
INGLIST_COLUMNS Specifies the panel column layout of the INGLIST command. INGLIST
This is a stem where:
• INGLIST_COLUMNS.0 contains the number of elements
• INGLIST_COLUMNS.n contains the definition of the n-th column
Each column definition is a blank separated list of tokens in the
sequence:
• prefix is the prefix indicator of the column which can be:
I when the column is 'immovable' which implies 'prefixed'
P when the column is 'prefixed' for horizontal scrolling
F when the column is 'floating' (that is, scrolled)
- when the column is hidden
• sortorder is the sort order of the column which can be:
A when the column is sorted in ascending order
D when the column is sorted in descending order
- when the column is not sorted or hidden
• sortkey is the sort key of the column which can be:
1-n when the column is sorted in the n-th place
- when the column is not sorted or hidden
• columnname is the name of the column. These can be multiple
words. Because this name is used to reference the column you
cannot change column names.
TGLOBALS with that name are a user-specific setting and they
overwrite the installation defaults. It is recommended to save a
layout to TGLOBALS and then derive CGLOBALS when needed.
Invalid definitions are silently ignored.
INGLIST_WAIT Sets the WAIT parameter of the INGLIST command to the specified INGLIST
value.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
INGMON_WAIT Sets the WAIT parameter of the INGMON command to the specified INGMON
value.
INGMOVE_WAIT Sets the WAIT parameter of the INGMOVE command to the specified INGMOVE
value.
INGPAC_WAIT Sets the WAIT parameter of the INGPAC command to the specified INGPAC
value.
INGRELS_SHOW Sets the SHOW parameter of the INGRELS command to the specified INGRELS
value.
INGRELS_WAIT Sets the WAIT parameter of the INGRELS command to the specified INGRELS
value.
INGREQ_BOOST Sets the default BOOST parameter of the INGREQ command to the INGREQ
specified value.
INGREQ_EXPIRE Sets the default EXPIRE parameter of the INGREQ command to the INGREQ
specified value. It can be set only to a relative time (e.g. +4:00), but
not an absolute expire date/time.
INGREQ_INTERRUPT Sets the default INTERRUPT parameter of the INGREQ command INGREQ
to the specified value. The parameter specifies whether or not the
automation manager should wait until the resource has reached its
UP state, but the resource is still in the startup phase when the
higher priority stop request is given.
INGREQ_OVERRIDE Sets the default OVERRIDE parameter of the INGREQ command to INGREQ
the specified value.
INGREQ_PRECHECK Sets the default PRECHECK parameter of the INGREQ command to INGREQ
the specified value.
INGREQ_PRI Sets the default priority (PRI parameter) of the INGREQ command to INGREQ
the specified value.
INGREQ_PRI.E2EMGR Specifies the priority that incoming requests from the end-to-end INGREQ
automation manager are executed at. Default: LOW
INGREQ_REMOVE Sets the default value for the REMOVE parameter of the INGREQ INGREQ
command to the specified value. If the resource reaches the
specified status (condition), the request is automatically removed.
INGREQ_REMOVE.START Sets the default value for the REMOVE parameter of the INGREQ INGREQ
START command. If not specified, the value set by INGREQ_REMOVE
is used.
INGREQ_REMOVE.STOP Sets the default value for the REMOVE parameter of the INGREQ INGREQ
STOP command. If not specified, the value set by INGREQ_REMOVE
is used.
INGREQ_RESTART Sets the default for the RESTART parameter of the INGREQ INGREQ
command when shutting down the resource.
INGREQ_SCOPE Sets the SCOPE parameter of the INGREQ command to the specified INGREQ
value.
INGREQ_SOURCE Sets the default SOURCE parameter of the INGREQ command to INGREQ
the specified value. The parameter specifies the originator of the
request.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
INGREQ_TIMEOUT Sets the interval in minutes used to check for the INGREQ INGREQ
command used to check whether the request has been successfully
completed, and whether to send a message or cancel the request if
it has not been satisfied after that time.
INGREQ_TYPE Sets the default startup/shutdown type (TYPE parameter) of the INGREQ
INGREQ command to the specified value.
INGREQ_VERIFY Sets the default VERIFY parameter of the INGREQ command to the INGREQ
specified value.
INGREQ_WAIT Sets the WAIT parameter of the INGREQ command to the specified INGREQ
value.
INGRPT_WAIT Sets the WAIT parameter of the INGRPT command to the specified INGRPT
value.
INGRUN_CMT Sets the CMT parameter of the INGRUN command to the specified INGRUN
value.
INGRUN_MULT Sets the MULT parameter of the INGRUN command to the specified INGRUN
value.
INGRUN_OVERRIDE Sets the OVERRIDE parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_PERSISTENT Sets the PERSISTENT parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_PRI Sets the PRI parameter of the INGRUN command to the specified INGRUN
value.
INGRUN_REQ Sets the REQ parameter of the INGRUN command to the specified INGRUN
value.
INGRUN_RUNMODE Sets the RUNMODE parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_RUNRES Sets the RUNRES parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_SYSTEM Sets the SYSTEM parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_TARGET Sets the TARGET parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_TYPE Sets the TYPE parameter of the INGRUN command to the specified INGRUN
value.
INGRUN_VERIFY Sets the VERIFY parameter of the INGRUN command to the INGRUN
specified value.
INGRUN_WAIT Sets the WAIT parameter of the INGRUN command to the specified INGRUN
value.
INGSCHED_WAIT Sets the WAIT parameter of the INGSCHED command to the INGSCHED
specified value. The parameter specifies whether or not to wait until
the request is complete.
INGSET_VERIFY Sets the default VERIFY parameter of the INGSET command to the INGSET
specified value.
Table 27. Global Variables That Define the Installation Defaults for Specific Commands (continued)
Variable Name Description Reference 1
INGSET_WAIT Sets the WAIT parameter of the INGSET command to the specified INGSET
value. The parameter specifies whether or not to wait until the
request is complete.
INGSTX_WAIT Sets the WAIT parameter of the INGSTX command to the specified INGSTX
value.
INGSUSPD_EXPIRE Sets the default EXPIRE parameter of the INGSUSPD command to INGSUSPD
the specified value. It can be set only to a relative time (e.g. +4:00),
but not an absolute expire date/time.
INGSUSPD_REMOVE Sets the default value for the REMOVE parameter of the INGSUSPD INGSUSPD
command to the specified value. If the resource reaches the
specified status (condition), the request is automatically removed.
INGSUSPD_SCOPE Sets the SCOPE parameter of the INGSUSPD command to the INGSUSPD
specified value.
INGSUSPD_TIMEOUT Sets the interval in minutes for the INGSUSPD command to check INGSUSPD
whether the request completes successfully, and whether to send a
message or cancel the request if the request is not satisfied after
that time.
INGSUSPD_VERIFY Sets the default VERIFY parameter of the INGSUSPD command to INGSUSPD
the specified value.
INGSUSPD_WAIT Sets the WAIT parameter of the INGSUSPD command to the INGSUSPD
specified value.
INGTRIG_WAIT Sets the WAIT parameter of the INGTRIG command to the specified INGTRIG
value.
INGVOTE_EXCLUDE Sets the EXCLUDE parameter of the INGVOTE command to the INGVOTE
specified value. The parameter specifies the resource types (for
example SVP or GRP) to be excluded when showing all requests.
Resources of that type are filtered out.
INGVOTE_SHOW Sets the SHOW parameter of the INGVOTE command to the INGVOTE
specified value.
INGVOTE_SOURCE Sets the default SOURCE parameter of the INGVOTE command to INGVOTE
the specified value.
INGVOTE_STATUS Sets the STATUS parameter of the INGVOTE command to the INGVOTE
specified value. The parameter specifies which requests should be
displayed: winning, losing or all.
INGVOTE_WAIT Sets the WAIT parameter of the INGVOTE command to the specified INGVOTE
value.
INGWHY_TIMEOUT Sets the TIMEOUT parameter of the INGWHY command to the INGWHY
specified value.
INGWHY_WAIT Sets the WAIT parameter of the INGWHY command to the specified INGWHY
value.
Root Component
The root component is typically an element appearing on the first screen displayed when SDF is started.
In Figure 48 on page 232, the CHI01 system is the root component.
Status Component
Resources monitored by SDF are called status components. In Figure 48 on page 232, system CHI01 has
JES2, RMF, VTAM, TSO, and NetView status components, as shown on the CHI01 System Status panel.
The status component panel displays all monitored resources in a system. Each monitored resource is
shown in the color of its current status. For example, JES2 is shown in green if it is up.
Status Descriptors
A status descriptor is a detailed record of information about a resource status. In its raw form, a status
descriptor is a multiline SA z/OS message containing information such as:
• Root component and status component to which the status descriptor applies
• Priority, color, and highlighting associated with the status descriptor (see “How Status Descriptors
Affect SDF” on page 234 for more information)
• Date and time the status descriptor was generated
• Actual resource status information; for example, an SA z/OS message indicating the resource is up
SDF uses information in a status descriptor to generate a detail status display (see “Detail Status Display”
on page 232). You do not usually look directly at a status descriptor; rather, you look at portions of it
through a detail status display. For example, in Figure 48 on page 232, the detail status display presents
information from a status descriptor for status component JES2. The 1 of 3 on the panel indicates that
JES2 currently has three status descriptors associated with it.
SDF generates, displays, and deletes status descriptors.
1 SY1
2 SYSTEM
3 WTOR
3 APPLIC
4 AOFAPPL
5 AOFSSI
4 JES
4 VTAM
3 TSO
3 RMF
2 GATEWAY
2 MONITOR
2 APG
3 GROUP
SA z/OS supplies a sample SDF tree structure in the SA z/OS sample library. This tree structure is
referenced by a %INCLUDE statement in member AOFTREE in the NetView DSIPARM data set. You can
customize this sample tree structure to meet your requirements. This order of dependency does not
have to be the same as that used for system startup or shutdown using SA z/OS. System symbols are
supported for the tree structure. This can help reduce both customization work and errors.
For example, using the tree structure in Figure 49 on page 233, if there is a problem with TSO, it is not
desirable to also change the VTAM status color, because VTAM is not having any problems. In contrast, in
the SA z/OS startup and shutdown procedures, TSO is dependent on VTAM.
More details on SDF tree structure definitions are in “Step 1: Defining SDF Hierarchy” on page 241.
White is used as the default status descriptor color (the DCOLOR parameter in member AOFINIT,
described in IBM Z System Automation Programmer's Reference) and as the default color for a status
component without a tree structure entry (the ERRCOLOR parameter in member AOFINIT, described in
IBM Z System Automation Programmer's Reference). For more information on the PRIORITY parameter,
see IBM Z System Automation Programmer's Reference.
• in the SDF definitions in the Status Details policy object. These entries define colors, highlighting,
and priorities used for particular resource statuses. Color and priority assignments defined in the
customization dialog can be used to override assignments in the AOFINIT member.
Note: Some of the resource statuses that appear in SDF displays do not directly correspond to resource
statuses used in the automation status file.
IBM Z System Automation Programmer's Reference shows the default resource status types, colors,
highlighting, and priorities provided with SA z/OS. These settings define to SA z/OS the parameters used
when adding status descriptors to SDF.
For more information on the SDF Status Details definition, see “Step 4: (Optional) Defining SDF in the
Customization Dialog” on page 246.
order of priority. Status descriptors are also chained off the root component. These status descriptors are
all the status descriptors that currently exist at all levels of the tree structure.
For example, Figure 50 on page 235 shows status descriptors currently generated for system SY1. The
priority for each status descriptor is shown by a number.
The status components at the lowest level in this tree structure, JES2, RMF, and VTAM, have status
descriptors chained off them. Status component JES2 has three status descriptors chained, with priorities
1, 10, and 50. Because 1 is the highest priority, the status descriptor with priority 1 is organized first in
the chain. This highest-priority status descriptor determines the color in which JES2 is displayed on the
status panel. If an operator uses the detail PF key to view detail status displays for JES2, the information
contained in the status descriptor with priority 1 is displayed first, then the detail status display for the
status descriptor with priority 10, and so on.
At the SYSTEM status component level in the tree structure, all status descriptors from the lower-level
status components are also chained. Because the status descriptors chained to RMF and VTAM have
higher priorities than the priority 10 and 50 status descriptors for JES2, they are organized after the
priority 1 status descriptor in the chain. An operator using the detail PF key at the SYSTEM level could
view five detail status displays, ranging from priority 1 to priority 50.
Similarly, at the SY1 level in the tree structure, all status descriptors chained to all status components
in the tree structure are chained in order of priority. An operator using the detail PF key at the SY1 level
could view six detail status displays, ranging from priority 1 to priority 100.
If a status component has multiple status descriptors with equal priorities, the status descriptors are
chained off the status component in order of arrival time.
When a status descriptor no longer accurately reflects the actual status of a resource, SDF automatically
deletes it from status descriptor chains. As an example of how priority determines order of status
descriptors, suppose two status descriptors currently exist for status component JES2. If there are two
status descriptors for JES2 with priorities of 120 and 140, the status descriptor with priority 120 is
displayed first. In both cases, JES displays in red on the SDF status panel.
In SA z/OS, all statuses are defined in the automation control file. When an automation event occurs, the
SA z/OS AOCUPDT command scans the automation control file for the SDF entry for that status. SA z/OS
issues a request to add the status using the information from the automation control file.
For example, suppose subsystem RMF, shown on the example SDF panels in Figure 48 on page 232,
is set to a STOPPING state. The SA z/OS AOCUPDT command scans the automation control file for the
STOPPING state entry for SDF and generates a status descriptor, specifying a priority of 420. SDF adds
the status descriptor to the RMF status component. RMF appears as yellow and reverse on the status
panel. Once RMF is in a stopped state, the AOCUPDT command scans the automation control file for the
STOPPED state SDF entry and generates a status descriptor with priority 120. SDF adds this new status
descriptor to the RMF status component. Now, RMF appears in red on the SDF status panel.
4. Because status descriptors are chained in order of priority, the JES status now reflects the status
descriptor color of the more serious problem.
5. When the more serious problem is resolved, the application program detecting the problem resolution
issues a request to SDF to remove the status descriptor for this problem from the chain of JES status
descriptors.
6. The status panel is updated to reflect the first problem.
Note: Both members AOFPNLS and AOFTREE must not contain any variable that is subject to replication.
See "Status Component Panel Definition" in IBM Z System Automation Programmer's Reference for the
setup of AOF_AAO_SDFROOT.n variables.
See "AOFTREE" in IBM Z System Automation Programmer's Reference for the setup and usage of
AOF_AAO_SDFCxxx.n variables.
ROOT_COMPONENT.STATUS_COMPONENT
For example:
SY1.JES2
Similarly, any SDF status descriptors that are forwarded from the target system to the focal point SDF are
prefixed with the root name of the target system by SA z/OS routines.
%>select
%> when cursys() = 'SY1P' then
%> do
If you plan to activate and deactivate the parallel update of the focal points using the INGAMS REFRESH
command, you need to adapt the above style sheet definitions as follows:
%>select
%> when cursys() = 'SY1P' then
%> do
/* PFP has defined PFP=SY1P and BFP=SY2B */
COMMON.AOF_AAO_SDFPFP_ROOT.0 = 1
COMMON.AOF_AAO_SDFPFP_ROOT.1 = PFPONLY
COMMON.AOF_AAO_SDFBFP_ROOT.0 = 1
COMMON.AOF_AAO_SDFBFP_ROOT.1 = BFPONLY
%> end
%> when cursys() = 'SY2B' then
%> do
COMMON.AOF_AAO_SDFBFP_ROOT.0 = 1
COMMON.AOF_AAO_SDFBFP_ROOT.1 = BFPONLY
%> end
%> otherwise
%> nop
%>end /* select */
These definitions allow the focal point processing to determine the SDF root names that must not be
deleted on the backup focal point when the parallel update option is deactivated.
For a description of the style sheet variables, see “Read/Write Variables” on page 204.
SDF Components
SDF consists of the following components:
START TASK=AOFTDDF
STOP TASK=AOFTDDF
Note: When SDF is restarted, all existing SDF status descriptors are lost, as they are kept only in memory.
Procedure
1. Define the hierarchy of monitored resources used for your SDF panels, using tree structure statements
in NetView DSIPARM data set members. These tree structure definition members should be
referenced by %INCLUDE statements in the main SDF tree structure definition member, AOFTREE,
in the NetView DSIPARM data set. See IBM Z System Automation Programmer's Reference for details.
2. Define SDF status panels using panel definition statements in NetView DSIPARM data set members.
Panels can either be automatically loaded when SDF starts, or dynamically loaded using the SDFPANEL
command. For panels to be automatically loaded, add %INCLUDE statement specifying the panel
definition member to the main panel definition member, AOFPNLS, in the (conref) DSIPARM data set.
See “Step 2: Defining SDF Panels” on page 242 for details.
Define and customize SDF status panels in the following general order:
a. Root panel
b. Status component panel for each entry on the root panel
c. Any other customized status panels.
3. Customize the SDF initialization parameters in NetView DSIPARM member AOFINIT, if necessary
(optional), or use defaults. See IBM Z System Automation Programmer's Reference for detailed
descriptions of SDF initialization parameters. Using defaults is recommended.
4. Define SDF resource status, color, highlight and priority values using the customization dialog to
edit the SDF Status Display policy object, or use defaults. This step is optional. See IBM Z System
Automation Defining Automation Policy for the description of the Status Display policy object. Using
defaults is recommended.
Notes:
a. Resources that SA z/OS is not currently automating are not displayed on SDF panels.
b. To display the status of multiple systems and forward status from target systems to SDF on a
focal point system, SA z/OS focal point services must already be implemented. See IBM Z System
Automation Defining Automation Policy for details on configuring focal point services.
In this tree structure, SY1 is the root component. This definition is in a separate member, named SY1. It is
referenced by the following statement in the AOFTREE member:
%INCLUDE(SY1TREE)
PFK4=SDFCONF &ROOT,&COMPAPPL,&RV,&SID,&SNODE,&DATE,&TIME,&DA
Using SDFCONF to delete a record in SDF is useful because it prompts you for confirmation before
performing the actual deletion. If you do not want the prompt panel to appear, then add ",VERIFY=NO"
to the end of the SDFCONF command.
You must call SDFCONF to delete exceptional messages, that is, captured messages with the severity
Unusual, Important and Critical. The SDFCONF command removes a message entry from the SDF
control structure and also from all other interfaces where the message is shown, for example, TEP.
• End panel statement (ENDPANEL)
Descriptions of these panel definition statements are in IBM Z System Automation Programmer's
Reference.
SY1 GATEWAY
===>
1=HELP 2=DETAIL 3=RET 6=ROLL 7=UP 8=DN 10=LF 11=RT 12=TOP
Figure 53 on page 244 shows the panel definition statements required to define the panel in Figure 52 on
page 243.
In Figure 53 on page 244, the panel name is SYSTEM. This panel definition can either be in a separate
member referenced by an %INCLUDE statement in AOFPNLS or be directly coded in AOFPNLS. The
recommended method is to use a separate member and an %INCLUDE statement. If it is in a separate
member, the member name is SYSTEM. You do not have to explicitly define every PF key for the panel. PF
key definitions not specified are picked up from definitions in NetView DSIPARM member AOFINIT.
Table 29 on page 244 describes each statement in Figure 53 on page 244:
• The application's monitor indicates that the address space is already active.
• The application is involved in a shutdown.
• The application is in status BREAKING, BROKEN, or CTLDOWN.
%AOFDOM% This synonym should contain the domain ID of the SA z/OS NetView
on the system that it is automating. The synonym is used to screen
messages to prevent the SA z/OS on this machine from reacting to a
message that originated on another machine. If not set correctly, your
automation fails.
Default: &DOMAIN.
This is a default domain name used in a number of the samples.
%AOFSYS% This synonym should contain the system name used in the last IPL
of the system. It is used to screen messages to prevent the SA z/OS
on this machine from reacting to events that have occurred on other
machines. It is important if you are running on a JES3 global or in a
sysplex with EMCS consoles. If not set correctly, your automation fails.
Default: &SYSNAME.
This is a default system name used in a number of the samples.
%AOFARMPPI% This synonym should contain the name of the NetView autotask that
is running the PPI interface from SA z/OS to z/OS. It is used to route
commands from the NetView automation table to the autotask.
Default: AOFARCAT
type of message. There is one set for the normal presentation of the message (AOFNORMx) and a second
set for the held presentation (AOFHOLDx).
%AOFHOLDA% This synonym defines the actions taken for SA z/OS immediate action
(type A) messages that are held on your NCCF console. As a rule, you
should specify HOLD(Y) in the action.
Default: HOLD(Y) COLOR(RED) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in reverse video red
• Sounds the terminal alarm when the message is displayed
%AOFHOLDD% This synonym defines the actions taken for SA z/OS decision (type D)
messages that are held on your NCCF console. As a rule, you should
specify HOLD(Y) in the action.
Default: HOLD(Y) COLOR(WHI) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in reverse video white
• Sounds the terminal alarm when the message is displayed
%AOFHOLDE% This synonym defines the actions taken for SA z/OS eventual action
(type E) messages that are held on your NCCF console. As a rule, you
should specify HOLD(Y) in the action.
Default: HOLD(Y) COLOR(YEL) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in reverse video yellow
• Sounds the terminal alarm when the message is displayed
%AOFHOLDW% This synonym defines the actions taken for SA z/OS wait state (type W)
messages that are held on your NCCF console. As a rule, you should
specify HOLD(Y) in the action.
Default: HOLD(Y) COLOR(PIN) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in reverse video pink
• Sounds the terminal alarm when the message is displayed
%AOFNORMA% This synonym defines the actions taken for SA z/OS Immediate Action
(type A) messages that are held on your NCCF console. As a rule, you
should not specify HOLD(Y) in the action.
Default: COLOR(YEL) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in yellow
• Sounds the terminal alarm when the message is displayed
%AOFNORMD% This synonym defines the actions taken for SA z/OS Decision (type
D) messages that are held on your NCCF console. You may find it
beneficial to force these messages to be held.
Default: COLOR(WHI) XHILITE(BLI)
This:
• Ensures that the message is held
• Causes the message to be displayed in blinking white
%AOFNORME% This synonym defines the actions taken for SA z/OS Eventual Action
(type E) messages that are not held on your NCCF console. As a rule,
you should not specify HOLD(Y) in the action.
Default: COLOR(YEL)
This:
• Ensures that the message is not held
• Causes the message to be displayed in yellow
%AOFNORMW% This synonym defines the actions taken for SA z/OS Wait State (type
W) messages that are held on your NCCF console. You may find it
beneficial to force these messages to be held.
Default: HOLD(Y) COLOR(PIN) XHILITE(REV) BEEP(Y)
This:
• Ensures that the message is held
• Causes the message to be displayed in reverse video pink
• Sounds the terminal alarm when the message is displayed
'AUTMON AUTBASE AUTINIT1' and you route a command to it with ROUTE (ONE %CASCADE%) on an
EXEC statement, the command is run on the first autotask in the cascade that is logged on. This provides
you with a flexible, controllable means of providing backup processing tasks in case one of your normal
tasks is unavailable.
%AOFOPBASEOPER% This cascade is used to send commands to BASEOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. BASEOPER is mainly defined as a fallback operator and has
very little work directly routed to it.
Default: AUTBASE AUTINIT1
AUTBASE is the operator ID that SA z/OS uses for BASEOPER in its
other samples. If AUTBASE is not active, AUTINIT1 is tried.
%AOFOPRPCOPER% This cascade is used for XCF communication management. If you are
not using the standard names for SA z/OS autotasks you must change
this synonym.
Default: AUTRPC AUTSYS AUTBASE AUTINIT1
%AOFOPSYSOPER% This cascade is used to send commands to SYSOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. SYSOPER is mainly defined as a fallback operator and has
very little work directly routed to it.
Default: AUTSYS AUTBASE AUTINIT1
AUTSYS is the operator ID that SA z/OS uses for SYSOPER in its other
samples.
%AOFOPMSGOPER% This cascade is used to send commands to MSGOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. MSGOPER is mainly defined to respond to miscellaneous
messages.
Default: AUTMSG AUTSYS AUTBASE AUTINIT1
AUTMSG is the operator ID that SA z/OS uses for MSGOPER in its other
samples.
%AOFOPJESOPER% This cascade is used to send commands to JESOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. JESOPER is mainly defined for JES automation.
Default: AUTJES AUTSYS AUTBASE AUTINIT1
AUTJES is the operator ID that SA z/OS uses for JESOPER in its other
samples.
%AOFOPMONOPER% This cascade is used to send commands to MONOPER. If you are not
using the standard names for SA z/OS autotasks you must change
this synonym. MONOPER is used for regular monitoring and subsystem
startups.
Default: AUTMON AUTSYS AUTBASE AUTINIT1
AUTMON is the operator ID that SA z/OS uses for MONOPER in its
other samples.
%AOFOPRECOPER% This cascade is used to send commands to RECOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. RECOPER is used for recovery processing.
Default: AUTREC AUTSYS AUTBASE AUTINIT1
AUTREC is the operator ID that SA z/OS uses for RECOPER in its other
samples.
%AOFOPSHUTOPER% This cascade is used to send commands to SHUTOPER. If you are not
using the standard names for SA z/OS autotasks you must change this
synonym. SHUTOPER coordinates automated shutdowns.
Default: AUTSHUT AUTSYS AUTBASE AUTINIT1
AUTSHUT is the operator ID that SA z/OS uses for SHUTOPER in its
other samples.
Also, put 'DFTSOU SCAN' in the STARTUP-REFRESHSTART policy for the TSO subsystem.
When DFTSOU is called with the UPDATE parameter then:
• For IEF125I, an ADD request is sent to SDF for the TSO user that produces the message.
• For IEF126I, a DELETE request is sent to SDF for the TSO user that produces the message.
• For IEF450I, a DELETE request is sent to SDF for the failing TSO user. When IEF450I is specified, and
the trap is coded in INGMSGU1, then CONTINUE(Y) must also be coded.
When DFTSOU is called with the SCAN parameter, an MVS D TS,L command is issued to identify all
currently active TSO users. This data is then passed to SDF.
SDF updates are associated with SDF tree entry TSOUSERS.
Debug Messages
Since this APAR/PTF (OA52002) addresses a hardware deficiency specific to a single machine type set,
the messages informing about this RAS and problem determination support are written only to the netlog.
The following message variables are used:
cmd
Hardware command allowing a CLEAR STORAGE operation (ACTIVATE, DEACTIVATE, SYSRESET, and
LOAD)
dtmo1
ISQCCMD default timeout in seconds notation
ACTIVATE=600
DEACTIVATE=300
SYSRESET=60
LOAD=60
dtmo2
ISQCCMD timeout in M(m) notation
ACTIVATE=M(10)
DEACTIVATE=M(5)
This information was developed for products and services offered in the US. This material might be
available from IBM in other languages. However, you may be required to own a copy of the product or
product version in that language in order to access it.
IBM may not offer the products, services, or features discussed in this document in other countries.
Consult your local IBM representative for information on the products and services currently available in
your area. Any reference to an IBM product, program, or service is not intended to state or imply that
only that IBM product, program, or service may be used. Any functionally equivalent product, program, or
service that does not infringe any IBM intellectual property right may be used instead. However, it is the
user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this
document. The furnishing of this document does not grant you any license to these patents. You can
send license inquiries, in writing, to:
For license inquiries regarding double-byte character set (DBCS) information, contact the IBM Intellectual
Property Department in your country or send inquiries, in writing, to:
Each copy or any portion of these sample programs or any derivative work must include a copyright
notice as follows:
© (your company name) (year).
Portions of this code are derived from IBM Corp. Sample Programs.
© Copyright IBM Corp. _enter the year or years_.
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business
Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be
trademarks of IBM or other companies. A current list of IBM trademarks is available on the web at
"Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.
Applicability
These terms and conditions are in addition to any terms of use for the IBM website.
Commercial use
You may reproduce, distribute and display these publications solely within your enterprise provided
that all proprietary notices are preserved. You may not make derivative works of these publications, or
reproduce, distribute or display these publications or any portion thereof outside your enterprise, without
the express consent of IBM.
Rights
Except as expressly granted in this permission, no other permissions, licenses or rights are granted, either
express or implied, to the publications or any information, data, software or other intellectual property
contained therein.
IBM reserves the right to withdraw the permissions granted herein whenever, in its discretion, the use
of the publications is detrimental to its interest or, as determined by IBM, the above instructions are not
being properly followed.
You may not download, export or re-export this information except in full compliance with all applicable
laws and regulations, including all United States export laws and regulations.
IBM MAKES NO GUARANTEE ABOUT THE CONTENT OF THESE PUBLICATIONS. THE PUBLICATIONS
ARE PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT,
AND FITNESS FOR A PARTICULAR PURPOSE.
Glossary 265
• The automation manager configuration file (AMC)
• The NetView automation table (AT)
• The NetView message revision table (MRT)
• The MPFLSTxx member
automation control file (ACF)
In SA z/OS, a file that contains system-level automation policy information. There is one master
automation control file for each NetView system that SA z/OS is installed on. Additional policy
information and all resource status information is contained in the policy database (PDB). The SA z/OS
customization dialogs must be used to build the automation control files. They must not be edited
manually.
automation flags
In SA z/OS, the automation policy settings that determine the operator functions that are automated
for a resource and the times during which automation is active. When SA z/OS is running, automation
is controlled by automation flag policy settings and override settings (if any) entered by the operator.
Automation flags are set using the customization dialogs.
automation manager
In SA z/OS, the automation function is split up between the automation manager and the automation
agents. The coordination, decision making and controlling functions are processed by each sysplex's
automation manager.
The automation manager contains a model of all of the automated resources within the sysplex. The
automation agents feed the automation manager with status information and perform the actions that
the automation manager tells them to.
The automation manager provides sysplex-wide automation.
Automation Manager Configuration
The Automation Manager Configuration file (AMC) contains an image of the automated systems in a
sysplex or of a standalone system. See also automation configuration file.
Automation NetView
In SA z/OS the NetView that performs routine operator tasks with command procedures or uses other
ways of automating system and network management, issuing automatic responses to messages and
management services units.
automation operator
NetView automation operators are NetView autotasks that are assigned to perform specific
automation functions. See also automated function. NetView automation operators may receive
messages and process automation procedures. There are no logged-on users associated with
automation operators. Each automation operator is an operating system task and runs concurrently
with other NetView tasks. An automation operator could be set up to handle JES2 messages that
schedule automation procedures, and an automation statement could route such messages to the
automation operator. Similar to operator station task. SA z/OS message monitor tasks and target
control tasks are automation operators.
automation policy
The policy information governing automation for individual systems. This includes automation for
applications, z/OS subsystems, z/OS data sets, and z/OS components.
automation policy settings
The automation policy information contained in the automation control file. This information is
entered using the customization dialogs. You can display or modify these settings using the
customization dialogs.
automation procedure
A sequence of commands, packaged as a NetView command list or a command processor written
in a high-level language. An automation procedure performs automation functions and runs under
NetView.
Glossary 267
channel path identifier
A system-unique value assigned to each channel path.
channel-attached
Attached directly by I/O channels to a host processor (for example, a channel-attached device).
Attached to a controlling unit by cables, rather than by telecommunication lines. Contrast with link-
attached. Synonymous with local.
CHPID
In SA z/OS, channel path ID; the address of a channel.
CHPID port
A label that describes the system name, logical partitions, and channel paths.
CI
See console integration.
CICS/VS
Customer Information Control System for Virtual Storage. See Customer Information Control System.
CLIST
See command list.
clone
A set of definitions for application instances that are derived from a basic application definition by
substituting a number of different system-specific values into the basic definition.
clone ID
A generic means of handling system-specific values such as the MVS SYSCLONE or the VTAM subarea
number. Clone IDs can be substituted into application definitions and commands to customize a basic
application definition for the system that it is to be instantiated on.
command
A request for the performance of an operation or the execution of a particular program.
command facility
The component of NetView that is a base for command processors that can monitor, control,
automate, and improve the operation of a network. The successor to NCCF.
command list (CLIST)
A list of commands and statements, written in the NetView command list language or the REXX
language, designed to perform a specific function for the user. In its simplest form, a command list is
a list of commands. More complex command lists incorporate variable substitution and conditional
logic, making the command list more like a conventional program. Command lists are typically
interpreted rather than being compiled.
In SA z/OS, REXX command lists that can be used for automation procedures.
command procedure
In NetView, either a command list or a command processor.
command processor
A module designed to perform a specific function. Command processors, which can be written in
assembler or a high-level language (HLL), are issued as commands.
Command Tree/2
An OS/2-based program that helps you build commands on an OS/2 window, then routes the
commands to the destination you specify (such as a 3270 session, a file, a command line, or an
application program). It provides the capability for operators to build commands and route them to a
specified destination.
common commands
The SA z/OS subset of the CPC operations management commands.
Common User Access (CUA) architecture
Guidelines for the dialog between a human and a workstation or terminal.
Glossary 269
DASD
See direct access storage device.
data services task (DST)
The NetView subtask that gathers, records, and manages data in a VSAM file or a network device that
contains network management information.
data set
The major unit of data storage and retrieval, consisting of a collection of data in one of several
prescribed arrangements and described by control information to which the system has access.
data set members
Members of partitioned data sets that are individually named elements of a larger file that can be
retrieved by name.
DBCS
See double-byte character set.
DCCF
See disabled console communication facility.
DCF
See Document Composition Facility.
DELAY Report
An RMF report that shows the activity of each job in the system and the hardware and software
resources that are delaying each job.
device
A piece of equipment. Devices can be workstations, printers, disk drives, tape units, remote systems
or communications controllers. You can see information about all devices attached to a particular
switch, and control paths and jobs to devices.
DEVR Report
An RMF report that presents information about the activity of I/O devices that are delaying jobs.
dialog
Interactive 3270 panels.
direct access storage device (DASD)
A device that allows storage to be directly accessed, such as a disk drive.
disabled console communication facility (DCCF)
A z/OS component that provides limited-function console communication during system recovery
situations.
disk operating system (DOS)
An operating system for computer systems that use disks and diskettes for auxiliary storage of
programs and data.
Software for a personal computer that controls the processing of programs. For the IBM Personal
Computer, the full name is Personal Computer Disk Operating System (PCDOS).
display
To present information for viewing, usually on the screen of a workstation or on a hardcopy device.
Deprecated term for panel.
distribution manager
The component of the NetView program that enables the host system to use, send, and delete files
and programs in a network of computers.
Document Composition Facility (DCF)
An IBM licensed program used to format input to a printer.
domain
An access method and its application programs, communication controllers, connecting lines,
modems, and attached workstations.
Glossary 271
extended recovery facility (XRF)
A facility that minimizes the effect of failures in z/OS, VTAM, the host processor, or high availability
applications during sessions between high availability applications and designated terminals. This
facility provides an alternate subsystem to take over sessions from the failing subsystem.
F
fallback system
See secondary system.
field
A collection of bytes within a record that are logically related and are processed as a unit.
file manager commands
A set of SA z/OS commands that read data from or write data to the automation control file or the
operational information base. These commands are useful in the development of automation that
uses SA z/OS facilities.
focal point
In NetView, the focal-point domain is the central host domain. It is the central control point for any
management services element containing control of the network management data.
focal point system
A system that can administer, manage, or control one or more target systems. There are a number of
different focal point system associated with IBM automation products.
SA z/OS Processor Operations focal point system. This is a NetView system that has SA z/OS
host code installed. The SA z/OS Processor Operations focal point system receives messages from
the systems and operator consoles of the machines that it controls. It provides full systems and
operations console function for its target systems. It can be used to IPL these systems. Note that
some restrictions apply to the Hardware Management Console for an S/390® microprocessor cluster.
SA z/OS SDF focal point system. The SA z/OS SDF focal point system is an SA z/OS NetView system
that collects status information from other SA z/OS NetViews within your enterprise.
Status focal point system. In NetView, the system to which STATMON, VTAM and NLDM send status
information on network resources.
Hardware Management Console. Although not listed as a focal point, the Hardware Management
Console acts as a focal point for the console functions of an S/390 microprocessor cluster. Unlike all
the other focal points in this definition, the Hardware Management Console runs on a LAN-connected
workstation,
frame
For a System/390 microprocessor cluster, a frame contains one or two central processor complexes
(CPCs), support elements, and AC power distribution.
full-screen mode
In NetView, a form of panel presentation that makes it possible to display the contents of an entire
workstation screen at once. Full-screen mode can be used for fill-in-the-blanks prompting. Contrast
with line mode.
G
gateway session
An NetView-NetView Task session with another system in which the SA z/OS outbound gateway
operator logs onto the other NetView session without human operator intervention. Each end of a
gateway session has both an inbound and outbound gateway operator.
generic alert
Encoded alert information that uses code points (defined by IBM and possibly customized by users or
application programs) stored at an alert receiver, such as NetView.
group
A collection of target systems defined through configuration dialogs. An installation might set up a
group to refer to a physical site or an organizational or application entity.
group entry
A construct, created with the customization dialogs, used to represent and contain policy for a group.
Glossary 273
IBM Workload Scheduler (IWS)
See ZWS.
IBM Z Workload Scheduler (ZWS)
The scheduler that plans, executes, and tracks jobs in z/OS environments. It's previously called IBM
Workload Scheduler for z/OS (IWS), IBM Tivoli Workload Scheduler for z/OS (TWS), or OPC/A.
IBM zEnterprise 196 (z196)
The newest generation of System z family of servers built on a new processor chip, with enhanced
memory function and capacity, security, and on demand enhancements to support existing mainframe
workloads and large scale consolidation.
I/O resource number
Combination of channel path identifier (CHPID), device number, etc. See internal token.
images
A grouping of processors and I/O devices that you define. You can define a single-image mode that
allows a multiprocessor system to function as one central processor image.
IMS
See Information Management System.
IMS/VS
See Information Management System/Virtual Storage.
inbound
In SA z/OS, messages sent to the focal-point system from the PC or target system.
inbound gateway operator
The automation operator that receives incoming messages, commands, and responses from
the outbound gateway operator at the sending system. The inbound gateway operator handles
communications with other systems using a gateway session.
Information Management System (IMS)
Any of several system environments available with a database manager and transaction processing
that are capable of managing complex databases and terminal networks.
Information Management System/Virtual Storage (IMS/VS)
A database/data communication (DB/DC) system that can manage complex databases and networks.
Synonymous with Information Management System.
initial microprogram load
The action of loading microprograms into computer storage.
initial program load (IPL)
The initialization procedure that causes an operating system to commence operation.
The process by which a configuration image is loaded into storage at the beginning of a workday or
after a system malfunction.
The process of loading system programs and preparing a system to run jobs.
initialize automation
SA z/OS-provided automation that issues the correct z/OS start command for each subsystem when
SA z/OS is initialized. The automation ensures that subsystems are started in the order specified in
the automation control files and that prerequisite applications are functional.
input/output configuration data set (IOCDS)
A configuration definition built by the I/O configuration program (IOCP) and stored on disk files
associated with the processor controller.
input/output support processor (IOSP)
The hardware unit that provides I/O support functions for the primary support processor and
maintenance support functions for the processor controller.
Integrated Information Processor (IIP)
A specialized processor that provides computing capacity for selected data and transaction
processing workloads and for selected network encryption workloads.
Glossary 275
L
LAN
See local area network.
line mode
A form of screen presentation in which the information is presented a line at a time in the message
area of the terminal screen. Contrast with full-screen mode.
link
In SNA, the combination of the link connection and the link stations joining network nodes; for
example, a System/370 channel and its associated protocols, a serial-by-bit connection under the
control of synchronous data link control (SDLC). See synchronous data link control.
In SA z/OS, link connection is the physical medium of transmission.
link-attached
Describes devices that are physically connected by a telecommunication line. Contrast with channel-
attached.
Linux on z Systems
UNIX-like open source operating system conceived by Linus Torvalds and developed across the
internet.
local
Pertaining to a device accessed directly without use of a telecommunication line. Synonymous with
channel-attached.
local area network (LAN)
A network in which a set of devices is connected for communication. They can be connected to a
larger network. See also token ring.
A network that connects several devices in a limited area (such as a single building or campus) and
that can be connected to a larger network.
logical partition (LP)
A subset of the processor hardware that is defined to support an operating system. See also logically
partitioned mode.
logical token (LTOK)
Resource number of an object in the IODF.
logical unit (LU)
In SNA, a port through which an end user accesses the SNA network and the functions provided by
system services control points (SSCPs). An LU can support at least two sessions, one with an SSCP
and one with another LU, and may be capable of supporting many sessions with other LUs. See also
physical unit and system services control point.
logical unit 6.2 (LU 6.2)
A type of logical unit that supports general communications between programs in a distributed
processing environment. LU 6.2 is characterized by:
• A peer relationship between session partners
• Efficient use of a session for multiple transactions
• A comprehensive end-to-end error processing
• A generic application program interface (API) consisting of structured verbs that are mapped to a
product implementation
Synonym for advanced program-to-program communication.
logically partitioned (LPAR) mode
A central processor mode that enables an operator to allocate system processor hardware resources
among several logical partitions. Contrast with basic mode.
LOGR
The sysplex logger.
Glossary 277
Micro Channel architecture
The rules that define how subsystems and adapters use the Micro Channel bus in a computer. The
architecture defines the services that each subsystem can or must provide.
microprocessor
A processor implemented on one or a small number of chips.
migration
Installation of a new version or release of a program to replace an earlier version or release.
MP
Multiprocessor.
MPF
See message processing facility.
MPFLSTxx
The MPFLST member that is built by SA z/OS.
multi-MVS environment
physical processing system that is capable of operating more than one MVS image. See also MVS
image.
multiple console support (MCS)
A feature of MVS that permits selective message routing to multiple consoles.
Multiple Virtual Storage (MVS)
An IBM operating system that accesses multiple address spaces in virtual storage. The predecessor of
z/OS.
multiprocessor (MP)
A CPC that can be physically partitioned to form two operating processor complexes.
multisystem application
An application program that has various functions distributed across z/OS images in a multisystem
environment.
multisystem environment
An environment in which two or more systems reside on one or more processors. Or one or more
processors can communicate with programs on the other systems.
MVS
See Multiple Virtual Storage.
MVS image
A single occurrence of the MVS operating system that has the ability to process work. See also
multi-MVS environment and single-MVS environment.
MVS/ESA
Multiple Virtual Storage/Enterprise Systems Architecture. See z/OS.
MVS/JES2
Multiple Virtual Storage/Job Entry System 2. A z/OS subsystem that receives jobs into the system,
converts them to an internal format, selects them for execution, processes their output, and purges
them from the system. In an installation with more than one processor, each JES2 processor
independently controls its job input, scheduling, and output processing.
N
NAU
See network addressable unit.
See network accessible unit.
NCCF
See Network Communications Control Facility..
NCP
See network control program (general term).
See Network Control Program (an IBM licensed program). Its full name is Advanced Communications
Function for the Network Control Program. Synonymous with ACF/NCP.
Glossary 279
Network Communications Control Facility (NCCF)
The operations control facility for the network. NCCF consists of a presentation service, command
processors, automation based on command lists, and a transaction processing structure on which
the network management applications NLDM are built. NCCF is a precursor to the NetView command
facility.
Network Control Program (NCP)
An IBM licensed program that provides communication controller support for single-domain,
multiple-domain, and interconnected network capability. Its full name is Advanced Communications
Function for the Network Control Program.
network control program (NCP)
A program that controls the operation of a communication controller.
A program used for requests and responses exchanged between physical units in a network for data
flow control.
Networking NetView
In SA z/OS the NetView that performs network management functions, such as managing the
configuration of a network. In SA z/OS it is common to also route alerts to the Networking NetView.
NIP
See nucleus initialization program.
NNT
See NetView-NetView task.
notification message
An SA z/OS message sent to a human notification operator to provide information about significant
automation actions. Notification messages are defined using the customization dialogs.
notification operator
A NetView console operator who is authorized to receive SA z/OS notification messages. Authorization
is made through the customization dialogs.
NTRI
See NCP/token ring interconnection.
nucleus initialization program (NIP)
The program that initializes the resident control program; it allows the operator to request last-minute
changes to certain options specified during system generation.
O
objective value
An average Workflow or Using value that SA z/OS can calculate for applications from past service
data. SA z/OS uses the objective value to calculate warning and alert thresholds when none are
explicitly defined.
OCA
In SA z/OS, operator console A, the active operator console for a target system. Contrast with OCB.
OCB
In SA z/OS, operator console B, the backup operator console for a target system. Contrast with OCA.
OPC/A
See Operations Planning and Control/Advanced.
OPC/ESA
See Operations Planning and Control/Enterprise Systems Architecture.
operating system (OS)
Software that controls the execution of programs and that may provide services such as resource
allocation, scheduling, input/output control, and data management. Although operating systems are
predominantly software, partial hardware implementations are possible. (T)
operations
The real-time control of a hardware device or software function.
Glossary 281
panel
A formatted display of information that appears on a terminal screen. Panels are full-screen 3270-
type displays with a monospaced font, limited color and graphics.
By using SA z/OS panels you can see status, type commands on a command line using a keyboard,
configure your system, and passthru to other consoles. See also help panel.
In computer graphics, a display image that defines the locations and characteristics of display fields
on a display surface. Contrast with screen.
parameter
A variable that is given a constant value for a specified application and that may represent an
application, for example.
An item in a menu for which the user specifies a value or for which the system provides a value when
the menu is interpreted.
Data passed to a program or procedure by a user or another program, specifically as an operand in a
language statement, as an item in a menu, or as a shared data structure.
partition
A fixed-size division of storage.
In VSE, a division of the virtual address area that is available for program processing.
On an IBM Personal Computer fixed disk, one of four possible storage areas of variable size; one can
be accessed by DOS, and each of the others may be assigned to another operating system.
partitionable CPC
A CPC that can be divided into 2 independent CPCs. See also physical partition, single-image mode,
MP, and side.
partitioned data set (PDS)
A data set in direct access storage that is divided into partitions, called members, each of which can
contain a program, part of a program, or data.
passive monitoring
In SA z/OS, the receiving of unsolicited messages from z/OS systems and their resources. These
messages can prompt updates to resource status displays. See also active monitoring
PCE
A processor controller. Also known as the support processor or service processor in some processor
families.
PDB
See policy database.
PDS
See partitioned data set.
physical partition
Part of a CPC that operates as a CPC in its own right, with its own copy of the operating system.
physical unit (PU)
In SNA, the component that manages and monitors the resources (such as attached links and
adjacent link stations) of a node, as requested by a system services control point (SSCP) through
an SSCP-PU session. An SSCP activates a session with the physical unit to indirectly manage, through
the PU, resources of the node such as attached links.
physically partitioned (PP) configuration
A mode of operation that allows a multiprocessor (MP) system to function as two or more independent
CPCs having separate power, utilities, and maintenance boundaries. Contrast with single-image mode.
PLEXID group
PLEXID group or "extended XCF communication group" is a term used in conjunction with a sysplex.
The PLEXID group includes System Automation Agents for a subset of a sysplex or for the entire
sysplex. It is used to provide XCF communication beyond the SAplex boundaries. For a detailed
description, refer to "Defining the Extended XCF Communication Group" in IBM Z System Automation
Planning and Installation.
Glossary 283
point system, processor operations automates operator and system consoles for monitoring and
recovering target systems. Also known as ProcOps.
Processor Resource/Systems Manager (PR/SM)
The feature that allows the processor to use several operating system images simultaneously and
provides logical partitioning capability. See also logically partitioned mode.
ProcOps
See processor operations.
ProcOps Service Machine (PSM)
The PSM is a CMS user on a VM host system. It runs a CMS multitasking application that serves as
"virtual hardware" for ProcOps. ProOps communicates via the PSM with the VM guest systems that are
defined as target systems within ProcOps.
product automation
Automation integrated into the base of SA z/OS for the products CICS, Db2, IMS, IBM Workload
Scheduler (formerly called features).
program operator interface (POI)
A NetView facility for receiving VTAM messages.
program to program interface (PPI)
A NetView function that allows user programs to send or receive data buffers from other user
programs and to send alerts to the NetView hardware monitor from system and application programs.
protocol
In SNA, the meanings of, and the sequencing rules for, requests and responses used for managing the
network, transferring data, and synchronizing the states of network components.
proxy resource
A resource defined like an entry type APL representing a processor operations target system.
PSM
See ProcOps Service Machine.
PU
See physical unit.
R
RACF
See Resource Access Control Facility.
remote system
A system that receives resource status information from an SA z/OS focal-point system. An SA z/OS
remote system is defined as part of the same SA z/OS enterprise as the SA z/OS focal-point system to
which it is related.
requester
A workstation from that user can log on to a domain from, that is, to the servers belonging to the
domain, and use network resources. Users can access the shared resources and use the processing
capability of the servers, thus reducing hardware investment.
resource
Any facility of the computing system or operating system required by a job or task, and including main
storage, input/output devices, the processing unit, data sets, and control or processing programs.
In NetView, any hardware or software that provides function to the network.
In SA z/OS, any z/OS application, z/OS component, job, device, or target system capable of being
monitored or automated through SA z/OS.
Resource Access Control Facility (RACF)
A program that can provide data security for all your resources. RACF protects data from accidental or
deliberate unauthorized disclosure, modification, or destruction.
resource group
A physically partitionable portion of a processor. Also known as a side.
Glossary 285
SCA
In SA z/OS, system console A, the active system console for a target hardware. Contrast with SCB.
SCB
In SA z/OS, system console B, the backup system console for a target hardware. Contrast with SCA.
screen
Deprecated term for panel.
screen handler
In SA z/OS, software that interprets all data to and from a full-screen image of a target system.
The interpretation depends on the format of the data on the full-screen image. Every processor and
operating system has its own format for the full-screen image. A screen handler controls one PS/2
connection to a target system.
SDF
See status display facility.
SDLC
See synchronous data link control.
SDSF
See System Display and Search Facility.
secondary system
A system is a secondary system for an application if it is defined to automation on that system, but
the application is not normally meant to be running there. Secondary systems are systems to which
an application can be moved in the event that one or more of its primary systems are unavailable.
SA z/OS does not start the application on its secondary systems.
Security Authorization Facility (SAF)
An MVS interface with which programs can communicate with an external security manager, such as
RACF.
server
A server is a workstation that shares resources, which include directories, printers, serial devices, and
computing powers.
service language command (SLC)
The line-oriented command language of processor controllers or service processors.
service period
Service periods allow the users to schedule the availability of applications. A service period is a set of
time intervals (service windows), during which an application should be active.
service processor (SVP)
The name given to a processor controller on smaller System/370 processors.
service threshold
An SA z/OS policy setting that determines when to notify the operator of deteriorating service for a
resource. See also alert threshold and warning threshold.
session
In SNA, a logical connection between two network addressable units (NAUs) that can be activated,
tailored to provide various protocols, and deactivated, as requested. Each session is uniquely
identified in a transmission header by a pair of network addresses identifying the origin and
destination NAUs of any transmissions exchanged during the session.
session monitor
The component of the NetView program that collects and correlates session-related data and
provides online access to this information. The successor to NLDM.
shutdown automation
SA z/OS-provided automation that manages the shutdown process for subsystems by issuing
shutdown commands and responding to prompts for additional information.
side
A part of a partitionable CPC that can run as a physical partition and is typically referred to as the
A-side or the B-side.
Glossary 287
subgroup
A named set of systems. A subgroup is part of an SA z/OS enterprise definition and is used for
monitoring purposes.
SubGroup entry
A construct, created with the customization dialogs, used to represent and contain policy for a
subgroup.
subplex
See SAplex.
subsystem
A secondary or subordinate system, usually capable of operating independent of, or asynchronously
with, a controlling system.
In SA z/OS, an z/OS application or subsystem defined to SA z/OS.
subsystem interface (SSI)
The z/OS interface over which all messages sent to the z/OS console are broadcast.
support element (SE)
A hardware unit that provides communications, monitoring, and diagnostic functions to a central
processor complex (CPC).
support processor
Another name given to a processor controller on smaller System/370 processors. See service
processor.
SVP
See service processor.
symbolic destination name (SDN)
Used locally at the workstation to relate to the VTAM application name.
synchronous data link control (SDLC)
A discipline for managing synchronous, code-transparent, serial-by-bit information transfer over a link
connection. Transmission exchanges may be duplex or half-duplex over switched or nonswitched
links. The configuration of the link connection may be point-to-point, multipoint, or loop. SDLC
conforms to subsets of the Advanced Data Communication Control Procedures (ADCCP) of the
American National Standards Institute and High-Level Data Link Control (HDLC) of the International
Standards Organization.
SYSINFO Report
An RMF report that presents an overview of the system, its workload, and the total number of jobs
using resources or delayed for resources.
SysOps
See system operations.
sysplex
A set of z/OS systems communicating and cooperating with each other through certain multisystem
hardware components (coupling devices and timers) and software services (couple data sets).
In a sysplex, z/OS provides the coupling services that handle the messages, data, and status for the
parts of a multisystem application that has its workload spread across two or more of the connected
processors, sysplex timers, coupling facilities, and couple data sets (which contains policy and states
for automation).
A Parallel Sysplex is a sysplex that includes a coupling facility.
sysplex application group
A sysplex application group is a grouping of applications that can run on any system in a sysplex.
sysplex couple data set
A couple data set that contains sysplex-wide data about systems, groups, and members that use XCF
services. All z/OS systems in a sysplex must have connectivity to the sysplex couple data set. See also
couple data set.
Glossary 289
target control task
In SA z/OS, target control tasks process commands and send data to target systems and workstations
through communications tasks. A target control task (a NetView autotask) is assigned to a target
system when the target system is initialized.
target hardware
In SA z/OS, the physical hardware on which a target system runs. It can be a single-image or
physically partitioned processor. Contrast with target system.
target system
In a distributed system environment, a system that is monitored and controlled by the focal-point
system. Multiple target systems can be controlled by a single focal-point system.
In SA z/OS, a computer system attached to the focal-point system for monitoring and control. The
definition of a target system includes how remote sessions are established, what hardware is used,
and what operating system is used.
task
A basic unit of work to be accomplished by a computer.
In the NetView environment, an operator station task (logged-on operator), automation operator
(autotask), application task, or user task. A NetView task performs work in the NetView environment.
All SA z/OS tasks are NetView tasks. See also message monitor task, and target control task.
telecommunication line
Any physical medium, such as a wire or microwave beam, that is used to transmit data.
terminal access facility (TAF)
A NetView function that allows you to log onto multiple applications either on your system or other
systems. You can define TAF sessions in the SA z/OS customization panels so you don't have to set
them up each time you want to use them.
In NetView, a facility that allows a network operator to control a number of subsystems. In
a full-screen or operator control session, operators can control any combination of subsystems
simultaneously.
terminal emulation
The capability of a microcomputer or personal computer to operate as if it were a particular type of
terminal linked to a processing unit to access data.
threshold
A value that determines the point at which SA z/OS automation performs a predefined action. See
alert threshold, warning threshold, and error threshold.
time of day (TOD)
Typically refers to the time-of-day clock.
Time Sharing Option (TSO)
An optional configuration of the operating system that provides conversational time sharing from
remote stations. It is an interactive service on z/OS, MVS/ESA, and MVS/XA.
Time-Sharing Option/Extended (TSO/E)
An option of z/OS that provides conversational timesharing from remote terminals. TSO/E allows
a wide variety of users to perform many different kinds of tasks. It can handle short-running
applications that use fewer sources as well as long-running applications that require large amounts of
resources.
timers
A NetView instruction that issues a command or command processor (list of commands) at a specified
time or time interval.
TOD
Time of day.
token ring
A network with a ring topology that passes tokens from one attaching device to another; for example,
the IBM Token-Ring Network product.
Glossary 291
Virtual Server Collection
A set of virtual servers that supports a workload. This set is not necessarily static. The constituents of
the collection at any given point are determined by virtual servers involved in supporting the workload
at that time.
virtual Server Image
A package containing metadata that describes the system requirements, virtual storage drives, and
any goals and constraints for the virtual machine {for example, isolation and availability). The Open
Virtual Machine Format (OVF) is a Distributed Management Task Force (DMTF) standard that describes
a packaging format for virtual server images.
Virtual Server Image Capture
The ability to store metadata and disk images of an existing virtual server. The metadata describes the
virtual server storage, network needs, goals and constraints. The captured information is stored as a
virtual server image that can be referenced and used to create and deploy other similar images.
Virtual Server Image Clone
The ability to create an identical copy (clone) of a virtual server image that can be used to create a
new similar virtual server.
Virtual Storage Extended (VSE)
A system that consists of a basic operating system (VSE/Advanced Functions), and any IBM supplied
and user-written programs required to meet the data processing needs of a user. VSE and the
hardware that it controls form a complete computing system. Its current version is called VSE/ESA.
Virtual Telecommunications Access Method (VTAM)
An IBM licensed program that controls communication and the flow of data in an SNA network.
It provides single-domain, multiple-domain, and interconnected network capability. Its full name is
Advanced Communications Function for the Virtual Telecommunications Access Method. Synonymous
with ACF/VTAM.
VM Second Level Systems Support
With this function, Processor Operations is able to control VM second level systems (VM guest
systems) in the same way that it controls systems running on real hardware.
VM/ESA
Virtual Machine/Enterprise Systems Architecture. Its current version is called z/VM.
volume
A direct access storage device (DASD) volume or a tape volume that serves a system in an SA z/OS
enterprise.
VSE
See Virtual Storage Extended.
VTAM
See Virtual Telecommunications Access Method.
W
warning threshold
An application or volume service value that determines the level at which SA z/OS changes the
associated icon in the graphical interface to the warning color. See alert threshold.
workstation
In SA z/OS workstation means the graphic workstation that an operator uses for day-to-day
operations.
write-to-operator (WTO)
A request to send a message to an operator at the z/OS operator console. This request is made by an
application and is handled by the WTO processor, which is part of the z/OS supervisor program.
write-to-operator-with-reply (WTOR)
A request to send a message to an operator at the z/OS operator console that requires a response
from the operator. This request is made by an application and is handled by the WTO processor, which
is part of the z/OS supervisor program.
Glossary 293
294 IBM Z System Automation : Customizing and Programming
Index
Index 295
AOFEXC05 exit 161 AOFSERXINT 204
AOFEXC06 exit 161 AOFSETSTATESCOPE 221
AOFEXC07 exit 161 AOFSHUTDELAY 204
AOFEXC08 exit 161 AOFSMARTMAT 204
AOFEXC09 exit 162 AOFSPOOLFULLCMD 204
AOFEXC11 exit 162 AOFSPOOLSHORTCMD 204
AOFEXC13 exit 162 AOFSTATUSCMDSEL 204
AOFEXC14 exit 162 AOFSUBSYS 203, 204
AOFEXC15 exit 162 AOFSYS 249, 250
AOFEXC16 exit 162 AOFSYSNAME 203
AOFEXC17 exit 162 AOFSYSPLEX 203
AOFEXC18 exit 163 AOFSYSPLEXGROUP 203
AOFEXC19 exit 163 AOFSYSTEM 203
AOFEXC20 exit 163 AOFUSSWAIT 204
AOFEXC21 exit 163 application
AOFEXC22 exit 163 adding to automation 1
AOFEXC23 exit 164 health status 23
AOFEXC24 164 application monitor status 23
AOFEXC25 164 application monitoring 23
AOFEXC26 164 application type IMAGE, defining 127
AOFEXC27 164 application, VTAM, defining to SA z/OS 137
AOFEXC28 164 applications, z/OS UNIX 83
AOFEXC29 165 ARM 248
AOFEXDEF exit 154 ASCB chaining
AOFEXI01 exit 154 and global variables 213
AOFEXI02 exit 154 ASFUSER command 20
AOFEXI03 exit 154 assist mode
AOFEXI04 exit 154 for testing automation procedures 18
AOFEXI05 exit 154 overview 17
AOFEXI06 exit 155 assumptions, health monitoring with OMEGAMON 32
AOFEXINT exit 155, 165, 204 asynchronous hardware commands, using pipes and
AOFEXPLAIN_USER 204 ISQCCMD for 78
AOFEXSTA exit 156 automated resources, z/OS UNIX Automation 85
AOFEXX02 exit 157 Automatic Restart Manager
AOFEXX04 exit 157 defining element name 247
AOFEXX05 157 MOVE group for 248
AOFINITIALSTARTTYP 203 automating
AOFINITREPLY 204 auxiliary storage shortage recovery 130
AOFJESPREFX 203 enqueues, long running 128
AOFJRYCMD description 99 IXC102A message 120
AOFLOCALHOLD 204 IXC402D message 120
AOFMATLISTING 204 Linux console messages 71
AOFMSGSY 249 Linux console messages, case sensitive 72
AOFOPCCMDMSG 204 Linux console messages, restrictions and limitations 72
AOFPFP 203 Linux console messages, security considerations 72
AOFRESTARTALWAYS 204 long running enqueues 128
AOFRJ3MN monitoring routine 42 message IXC102A 127
AOFRJ3RC monitoring routine 44 message IXC402D 127
AOFRMTCMDWAIT 204 USS resources 83
AOFRPCWAIT 204 automating processor operations controlled resources 69
AOFRSA01 automation routine 177 automation
AOFRSA02 automation routine 178 adding an application to 1
AOFRSA03 automation routine 179 advanced functions 204
AOFRSA08 automation routine 181 extending 7
AOFRSA0C automation routine 183 sysplex, enabling 113
AOFRSA0E automation routine 186 automation control file
AOFRSA0G automation routine 186 defining SDF 246
AOFRSD01 automation routine 197 reload action exit 165
AOFRSD07 automation routine 188 reload permission exit 165
AOFRSD09 automation routine 189 automation flag exits
AOFRSD0F automation routine 190 sample 160
AOFRSD0G automation routine 192 automation networks 133
AOFRSD0H automation routine 193 automation operator IDs
AOFSENDALERT 204 additional 130
Index 297
common global variables 10, 203 defining (continued)
communication flow logical partitions 124
alerts 55 logical sysplex 125
connecting physical sysplex 125
system to processor 125 processor 124, 127
connector resources for long running enqueues 129
active 115 SDF focal point system 133
failed persistent 115 SDF in automation control file 246
continuous availability, couple data set snapshot intervals for long running enqueues 129
enabling 125 started task job name 130
ensuring 113 SYSPLEX policy item 125
couple data set system 125
alternate CDS 113 TAF fullscreen sessions 134
alternate CDS, recovery of 113 temporary data set HLQ 130
alternate, specifying 125 VTAM application to SA z/OS 137
CFRM 125 definitions for automation setup 84
enabling continuous availability of 125 definitions for z/OS UNIX resources 84
ensuring continuous availability of 113 deletion of processed WTO(R)s from SDF 169
managing 113 developing messages for automation procedures 14
policy 113 directory extent 114
primary CDS 113 disability xvii
SYSPLEX 125 DISPEVT_WAIT 221
coupling facility 115 DISPEVTS_WAIT 221
coupling facility, managing 115 DISPGW_COLUMNS 221
creating automation procedures 7 DISPMTR_COLUMNS 221
customization dialog exits DISPSTAT_COLUMNS 221
invocation 152 DISPTRG_WAIT 221
customization of z/OS UNIX resources 83 drain processing prior to JES2 shutdown 169
customize automation DSIPARM data set 17
for processor operations 11
for system operations 9
customizing
E
alternate CDS recovery 114 element name, Automatic Restart Manager
hung command recovery 120 defining 247
IXC102A message automation 120 element names
IXC402D message automation 120 in Automatic Restart Manager 247
LINUX target systems 80 element names in Automatic Restart Manager 204
MVS target systems 80 enabling
proxy resource automation 70 alerting 56
SDF 231 alerting with INGCNTL 58
system logger recovery 115 alerting, with Inform List 57
system to use Parallel Sysplex enhancements 130 alerting, with INGCNTL 57
target systems 80 continuous availability of Couple Data Sets 125
VM target systems 81 sysplex automation 113
VSE target systems 81 system removal 126
WTOR(R) buffer shortage recovery 126
D enabling Relational Data Services 109
enabling, command receiver 95
DB2, writing SMF report to 66 ENQs 118
debugging enqueues
automation procedures 17 long running, automating 128
NetView facilities 19 long running, customizing recovery of 120
z/OS UNIX Automation 93 long running, handling 118
defining environmental setup exits 155
application type IMAGE 127 error codes 10
commands for long running enqueues 129 events, resource lifecycle 61
common automation items 130 EVIRYDP0_COLUMNS 221
gateway sessions 134 example automation procedure 15
handling of jobs for auxiliary storage shortage recovery examples of INGUSS command 87
130 exits
IEADMCxx symbols for long running enqueues 129 AOFEXC00 160
IMAGE application type 127 AOFEXC01 160
local page data set for auxiliary storage shortage AOFEXC02 161
recovery 130 AOFEXC03 161
Index 299
hung command recovery, customizing 120 INGREQ_ORIGINATOR 204
INGREQ_OVERRIDE 221
INGREQ_PRECHECK 221
I INGREQ_PRI 221
IDENT 20 INGREQ_PRI.E2EMGR 221
IEADMCxx symbols, defining INGREQ_REMOVE 221
for long running enqueues 129 INGREQ_REMOVE.START 221
IMAGE application type, defining 127 INGREQ_REMOVE.STOP 221
IMS automation, monitoring 45 INGREQ_RESTART 221
IMS transaction recovery 169 INGREQ_SCOPE 221
inbound gateway 134 INGREQ_SOURCE 221
INCLUDE statement 245 INGREQ_TIMEOUT 221
INGAMS_COLUMNS 221 INGREQ_TYPE 221
INGAUTO_INTERVAL 221 INGREQ_VERIFY 221
INGCF command 115 INGREQ_WAIT 221
INGCICS_CORRWAIT 204 INGRMJSP automation routine 195
INGDLG 152 INGRPT_WAIT 221
INGEAXIT exit 157 INGRTAPE automation routine 198
INGEI004 member 78 INGRUN_CMT 221
INGEVENT_WAIT 221 INGRUN_MULT 221
INGEX01 149 INGRUN_OVERRIDE 221
INGEX02 149 INGRUN_PERSISTENT 221
INGEX03 150 INGRUN_PRI 221
INGEX04 150 INGRUN_REQ 221
INGEX05 151 INGRUN_RUNMODE 221
INGEX06 151 INGRUN_RUNRES 221
INGEX07 151 INGRUN_SYSTEM 221
INGEX08 151 INGRUN_TARGET 221
INGEXEC_RESP 221 INGRUN_TYPE 221
INGEXEC_SELECT 221 INGRUN_VERIFY 221
INGEXEC_TIMEOUT 221 INGRUN_WAIT 221
INGEXEC_WAIT 221 INGRX740 automation routine 199
INGGROUP_WAIT 221 INGSCHED_WAIT 221
INGHIST_MAX 221 INGSET_VERIFY 221
INGHIST_WIMAX 221 INGSET_WAIT 221
INGIMS_CMDWAIT 221 INGSTX_WAIT 221
INGIMS_CORRWAIT 204 INGTRIG_WAIT 221
INGIMS_REQ 221 INGUSS command
INGINFO_RSTAT 221 examples 87
INGINFO_WAIT 221 INGVOTE_EXCLUDE 221
INGKLUP_WAIT 221 INGVOTE_SOURCE 221
INGLIST_COLUMNS 221 INGVOTE_STATUS 221
INGLIST_WAIT 221 INGVOTE_VERIFY 221
INGLKUP_TIMEOUT 221 initialization processing, AOFSERXINT 204
INGMON_WAIT 221 initializing automation procedures 8
INGMON, programming techniques 29 installing
INGMOVE_WAIT 221 automation procedure 17
INGMTRAP monitor command 35 integration of z/OS UNIX System Services 83
INGOMX API 33 ISQCCMD
INGOPC_MULTIPLIER 204 using for asynchronous hardware commands 78
INGPAC_SHOWNOLIMT 204 using for synchronous hardware commands 77
INGPAC_WAIT 221 ISQEXEC command 12, 73
INGPUSMF utility ISQOVRD 74
introduced 64 ISQOVRD command 12
JCL 65 ISQXLOC command 12
JCL, user options 65 ISQXMON command 73
output 64 ISQXUNL command 12
return codes 66 IXC102A message
INGRCJSP automation routine 197 automating 127
INGRELS_SHOW 221 automation of 120
INGRELS_WAIT 221 customizing automation of 120
INGREQ_BOOST 221 IXC402D message
INGREQ_EXPIRE 221 automating 127
INGREQ_INTERRUPT 221 automation of 120
Index 301
MVSESA.RELOAD.CONFIRM minor resource 165 Parallel update 238
passive, event-based health monitoring 28
persistent connection 115
N persistent structure 115
NetView physical sysplex, defining 125
Linux console connection to 72 PIPE labels 99
testing and debugging facilities 19 pipes
NetView automation table using for asynchronous hardware commands 78
adding processor operations messages to 72 using for synchronous hardware commands 77
AOFMSGSY 249 policy
fragments 249 CFRM 115
ISQEXEC 12, 73 couple data set 113
ISQOVRD 12 preference list 115
ISQXLOC 12 primary CDS 113
ISQXMON 73 Primary focal point 238
ISQXUNL 12 problem determination mode
merging entries 75 MVS guest target systems 79
production 75 process monitoring, z/OS UNIX Automation 85
reloading tables 76 processing, WTOR 145
sample entry 73 processor
NetView commands defining 124, 127
executing on a different NetView 99 PROCESSOR INFO policy item
submitting from a batch job 98 using 124
networks automation processor operations
definition process 133 guest machines support 79
new automation definitions processor operations command messages 74
building 76 processor operations commands 14
notification processor operations controlled resources, automating 69
alerts 55 processor operations resource 69
notifications 10 processor operations resource message automation 69
ProcOps Service Machine
guest target systems 79
O programming
additional SA z/OS automation procedures 7
observed status
recommendations for automation procedures 20
monitoring 23
programming recommendations
OMEGAMON
automation procedures 20
assumptions 32
proxy resource 70
exception analysis 31
proxy resources
exceptions, health monitoring 36
customizing automation for 70
health monitoring 37
shutdown considerations 71
health monitoring with 31
startup considerations 71
health-based automation, programming techniques 29
pseudo-exits 165
health-based automation, recommendations 37
PSM 79
health-based automation, recovery techniques 26
interaction 32
monitoring, overview 31 R
session management, INGMTRAP 35
session management, INGOMX 33 RDS Table Editor 111
usage scenario 36 rebuild
OMEGAMON XE situation monitoring system-managed 115
defining monitor resources 38 user-managed 115
overview 37 recommendations
OMEGAMON XE situations, monitoring 37 programming, for automation procedures 20
operator cascades 251 recovery
outbound gateway 134 "hung" command 118
overview alternate CDS 113
alerts 55 alternate CDS, customizing 114
monitoring with OMEGAMON 31 auxiliary storage shortage 121
auxiliary storage shortage, automating 130
command flooding 119
P handling long-running enqueues 118
long running enqueues, customizing 120
panels
system log failure 168
SYSLOG 181
system logger, customizing 115
Index 303
system logger (continued) VSE target systems, customizing 81
managing 114 VTAM application, defining to SA z/OS 137
recovery, customizing 115
recovery, directory shortage 114
system operations control files 76
W
system removal WTO(R)
enabling 126 automation routine
system-managed rebuild 115 deletion of processed WTO(R)s from SDF 169
processed, deletion from SDF 169
T WTO(R) buffer 116
WTOR processing 145
TAF fullscreen sessions WTOR(R) buffer shortage
defining 134 recovery, enabling 126
target systems, customizing 80
task global variables 10
TCP port monitoring, z/OS UNIX Automation 87
Z
temporary data set HLQ z/OS systems, shutting down in a GDPS Environment 141
defining 130 z/OS UNIX applications
Terminal Access Facility 134 infrastructure overview 83
testing z/OS UNIX Automation
automation procedures 17 automated resources 85
messages 75 debugging 93
more information 19 file monitoring 87
NetView facilities 19 hints and tips 92
testing exits 165 process monitoring 85
transaction recovery setting up 83
IMS 169 setup example 88
TRAP AND WAIT processing 78 TCP port monitoring 87
trapping UNIX syslogd messages 92 z/OS UNIX resources
customization of 83
U definitions for 84
monitoring routines for 84
UNIX Automation start and stop definitions 87
automated resources 85 z/OS UNIXSystem Services, integration of 83
debugging 93
file monitoring 87
hints and tips 92
process monitoring 85
setting up 83
setup example 88
TCP port monitoring 87
UNIX resources
customization of 83
definitions for 84
monitoring routines for 84
start and stop definitions 87
UNIX syslogd messages, trapping 92
UNIX System Services, integration 83
user exits
static exits 156
user logon, LINUX guest target systems 79
user-managed rebuild 115
using
PROCESSOR INFO policy item 124
USS resources
automating 83
V
VM second level systems support 79
VM target systems, customizing 81
VOST management, CICS monitoring 40
VSE guest target systems 79
SC34-2715-02