You are on page 1of 195

MIMIX

Version 7.0
Using MIMIX Monitor
Published: September 2010 level 7.0.01.00 Copyrights, Trademarks, and Notices
2
Contents
Version 7.0
Using MIMIX Monitor
Who this book is for..................................................................................................... 8
What is in this book............................................................................................... 8
The MIMIX documentation set .................................................................................... 8
SNA and OptiConnect Support Discontinued.............................................................. 9
Sources for additional information............................................................................. 10
How to contact us...................................................................................................... 11
Chapter 1 MIMIX Monitor overview 12
Monitor concepts....................................................................................................... 13
Components of a monitor.................................................................................... 13
Switching concepts.................................................................................................... 14
Support for switch automation............................................................................. 15
The MIMIX Model Switch Framework ................................................................. 16
Additional switch information............................................................................... 16
Monitor objects supplied with MIMIX......................................................................... 17
Basic operation.......................................................................................................... 20
Interface exit program processing....................................................................... 20
Master monitor .................................................................................................... 21
Monitor processing.............................................................................................. 22
Interval master monitor........................................................................................ 25
Group monitor processing................................................................................... 25
Additional switch definition operations ................................................................ 28
Chapter 2 Checklist: preparation 29
Security considerations ............................................................................................. 30
Preparing for a switch................................................................................................ 31
Requirements for switching................................................................................. 32
Starting the MIMIXSBS subsystem........................................................................... 33
Accessing the MIMIX Main Menu.............................................................................. 34
Chapter 3 Working with monitors 36
Starting and ending the master monitors .................................................................. 37
Starting the master monitor on the local system................................................. 37
Ending the master monitor on the local system.................................................. 37
Starting and ending the interval master monitor.................................................. 38
Displaying a list of monitors on a system.................................................................. 39
Actions available for monitors ............................................................................. 39
Monitor status values .......................................................................................... 40
Starting a monitor...................................................................................................... 42
Ending a monitor....................................................................................................... 43
Running condition and event programs for a monitor ............................................... 44
Enabling or disabling a monitor................................................................................. 45
Enabling a monitor .............................................................................................. 45
3
Disabling a monitor.............................................................................................. 45
Placing a monitor on hold.......................................................................................... 47
Releasing a held monitor........................................................................................... 48
Working with the message log.................................................................................. 49
Other operations available from a 5250 emulator..................................................... 50
Displaying monitor status details......................................................................... 50
Changing monitors .............................................................................................. 51
Copying monitors ................................................................................................ 51
Deleting a monitor ............................................................................................... 51
Displaying a monitor............................................................................................ 52
Printing a monitor ................................................................................................ 52
Renaming a monitor............................................................................................ 52
Working with information for a monitor................................................................ 52
Exporting and importing monitors........................................................................ 53
Exporting a monitor ....................................................................................... 53
Importing a monitor........................................................................................ 54
Working with monitor job logs ............................................................................. 55
Chapter 4 Creating user-defined monitors 57
Common parameters on the CRTMONOBJ command............................................. 57
Creating monitors...................................................................................................... 61
Creating a time monitor....................................................................................... 61
Tips for time monitors.................................................................................... 62
Creating a journal monitor................................................................................... 63
Creating a message queue monitor .................................................................... 65
Creating an interval monitor ................................................................................ 66
Creating a group monitor..................................................................................... 68
Event classes ............................................................................................................ 71
Predefined conditions for event classes and their associated parameters ......... 71
Interval monitors (*INTERVAL) ........................................................................... 72
When to use an interval monitor.................................................................... 73
J ournal monitors (*J RN)...................................................................................... 74
When to use a journal monitor....................................................................... 74
Extended journal monitors (*EXDJ RN) ............................................................... 75
Message queue monitors (*MSGQ) .................................................................... 75
When to use a message queue monitor........................................................ 76
Time monitors (*TIME) ........................................................................................ 76
When to use a time monitor........................................................................... 76
Group monitors (*GROUP).................................................................................. 77
When to use a group monitor........................................................................ 77
Predefined monitors (*PREDFN)......................................................................... 77
Chapter 5 Working with switch definitions 79
Accessing the Work with Switch Definitions display.................................................. 80
Creating switch definitions......................................................................................... 81
Creating a switch definition for TCP .................................................................... 81
Creating a switch definition for hardware switching ............................................ 82
Creating a switch definition for type *NONE........................................................ 83
Changing a switch definition...................................................................................... 85
Deleting a switch definition........................................................................................ 86
4
Displaying a switch definition.................................................................................... 87
Printing a switch definition......................................................................................... 88
Working with monitors for a switch definition............................................................ 89
Starting monitors for a switch definition............................................................... 89
Ending monitors for a switch definition................................................................ 89
Switching users manually.......................................................................................... 91
Synchronizing settings in the switching hardware............................................... 92
Displaying status for a switch definition..................................................................... 94
Running the event program for a switch definition.................................................... 95
Accessing the Work with Device Entries display....................................................... 96
Adding all devices to a switch definition.............................................................. 96
Adding a device entry.......................................................................................... 96
Changing a device entry...................................................................................... 96
Removing a device entry..................................................................................... 97
Displaying a device entry .................................................................................... 97
Printing a device entry......................................................................................... 97
Displaying and ending the switch screen.................................................................. 98
Displaying the switch screen............................................................................... 98
Ending the switch screen .................................................................................... 98
Changing the logon message during a switch..................................................... 98
Chapter 6 Using the MIMIX Model Switch Framework 100
Phases of switching in MIMIX Model Switch Framework........................................ 101
Operating requirements........................................................................................... 103
Securing your MIMIX Model Switch Framework environment................................. 104
MIMIX Model Switch Framework commands.......................................................... 105
Configuring an automated switch............................................................................ 106
About the RUNSWTFWK command....................................................................... 107
RUNSWTFWK success and failure indicators ........................................................ 108
Events and status: RUNSWTFWK command is invoked.................................. 109
Events and status: Starting a planned switch to a backup system.................... 109
Events and status: Starting an unplanned switch to a backup system.............. 110
Events and status: Starting the switch synchronization .................................... 111
Events and status: Returning to the production system.................................... 112
Enabling the MIMIX Model Switch Framework........................................................ 114
Disabling the MIMIX Model Switch Framework....................................................... 114
MIMIX Model Switch Framework messages ........................................................... 115
Completing a switch after encountering errors........................................................ 116
MIMIX Model Switch Framework status codes ....................................................... 117
MIMIX Model Switch Framework user exit programs.............................................. 121
Orphaned data and objects..................................................................................... 122
Chapter 7 Working with the UPS monitor 123
UPS monitor highlights............................................................................................ 124
Checklist: UPS configuration................................................................................... 126
Evaluating battery time requirements...................................................................... 127
Ensuring the UPS monitor is always active............................................................. 129
Setting system values for the UPS monitor............................................................. 130
Setting the job priority for the UPS monitor............................................................. 131
Accessing the UPS monitor menu........................................................................... 132
5
Configuring the UPS monitor................................................................................... 133
Changing warning message text............................................................................. 135
Starting and ending the UPS monitor...................................................................... 136
Testing the UPS configuration................................................................................. 137
Updating the available UPS power.......................................................................... 138
Testing power changes ........................................................................................... 139
Displaying status for the UPS monitor..................................................................... 141
Changing the UPS subsystem................................................................................ 143
Removing the UPS monitor from the controlling subsystem............................. 143
Chapter 8 Programming for monitors 144
Adding messages to the MIMIX message log......................................................... 145
What to include in your programs............................................................................ 146
Programming for switching................................................................................ 146
Programming for the UPS monitor .................................................................... 146
Interface exit program............................................................................................. 147
Required parameters......................................................................................... 147
Condition program................................................................................................... 149
Required parameters......................................................................................... 149
Event program......................................................................................................... 150
Required parameters......................................................................................... 150
MIMIX Monitor User Access API ............................................................................. 152
MMUSRACCS member..................................................................................... 152
Authorities and locks ......................................................................................... 152
Required parameters......................................................................................... 152
MON0100 format......................................................................................... 153
MON0200 format......................................................................................... 154
Field descriptions......................................................................................... 154
Additional data structures........................................................................................ 156
Detail information format................................................................................... 156
Message Queue (*MSGQ) ................................................................................ 156
Interval (*INTERVAL) ........................................................................................ 157
J ournal (*J RN)................................................................................................... 157
Time (*TIME)..................................................................................................... 158
Group (*GROUP) .............................................................................................. 158
Error code structure........................................................................................... 159
Field descriptions .................................................................................................... 160
Monitor program examples...................................................................................... 163
Interface exit program example......................................................................... 163
Condition program example.............................................................................. 164
Event program example.................................................................................... 165
Chapter 9 Resolving problems 167
Gathering information before reporting a problem.................................................. 168
Obtaining MIMIX and IBM i information from your system................................ 168
Appendix A MIMIX Monitor commands 169
MIMIX Monitor commands by group....................................................................... 169
Master monitor commands................................................................................ 169
Monitor commands............................................................................................ 169
Switch definition commands.............................................................................. 170
6
Switch device entry commands......................................................................... 170
MIMIX Model Switch Framework commands.................................................... 170
UPS monitor commands ................................................................................... 171
Appendix B Hardware switching devices 172
Hardware switch configurations .............................................................................. 173
Local configuration - SM900A switch................................................................ 173
Remote configuration........................................................................................ 174
Switching hardware requirements..................................................................... 174
Planning for switching hardware............................................................................. 177
Related communications procedures...................................................................... 180
Defining local communications.......................................................................... 180
Defining remote communications...................................................................... 181
For autodial V.25BIS modems..................................................................... 181
For other (non-autodial) modems................................................................ 182
Appendix C Work sheets for switching hardware 184
Work sheet A: rack cards and cables...................................................................... 184
Work sheet B: device and port assignments........................................................... 185
Work sheet C: port layout........................................................................................ 185
Appendix D Copying configuration data 187
Supported upgrade paths for copying configuration data........................................ 187
Checklist: copy monitor configuration data from a previous release....................... 187
Using the CPYCFGDTA command for MIMIX Monitor...................................... 187
Index 190
7
8
Who this book is for
The Using MIMIX Monitor book is for MIMIX administrators who have a need to set up
custom monitoring for a MIMIX environment or who need to support a switching
environment which uses the MIMIX Model Switch Framework.
What is in this book
The Using MIMIX Monitor book identifies the monitors that are shipped with or
created by MIMIX products and provides operational tasks for working with monitors.
This book also describes monitoring concepts, procedures for creating user-defined
monitors and provides programming information for creating exit programs to be
called by monitors.
This book also describes the switching environment provided by MIMIX Model Switch
Framework, commands for using the switch framework, and the events and status
indicators possible during each phase of a switch performed by a switch framework.
This book also describes how to configure switch definitions to support hardware
switching.
The MIMIX documentation set
The following documents about MIMIX products are available:
Using License Manager
This book describes software requirements, system security, and other planning
considerations for installing MIMIX software and software fixes. The preferred way
to obtain license keys and install software is by using AutoValidate and the MIMIX
Installation Wizard. However, if you cannot use them, this book provides
instructions for obtaining licenses and installing software from a 5250 emulator.
This book also describes how to use the additional security functions from Vision
Solutions which are available for MIMIX products and commands through License
Manager. Also, to support compatible previous releases, this book includes
requirements and troubleshooting information for MIMIX Availability Manager.
MIMIX Administrator Reference
This book provides detailed conceptual, configuration, and programming
information for MIMIX Enterprise and MIMIX Professional. It includes checklists
for setting up several common configurations, information for planning what to
replicate, and detailed advanced configuration topics for custom needs. It also
identifies what information can be returned in outfiles if used in automation.
MIMIX Global Operations
This book provides high level concepts and operational procedures for MIMIX
Global users in an IBM i cluster environment. This book focuses on addressing
problems reported in status and basic operational procedures such as starting,
ending, and switching.
MIMIX Operations - 5250
SNA and OptiConnect Support Discontinued
9
This book provides high level concepts and operational procedures for managing
your high availability environment using MIMIX Enterprise or MIMIX Professional
from a 5250 emulator. This book focuses on tasks typically performed by an
operator, such as checking status, starting or stopping replication, performing
audits, and basic problem resolution.
Using MIMIX Monitor
This book describes how to use the MIMIX Monitor user and programming
interfaces available with MIMIX Enterprise or MIMIX Professional. This book also
includes programming information about MIMIX Model Switch Framework and
support for hardware switching.
Using MIMIX Promoter
This book describes how to use MIMIX commands for copying and reorganizing
active files. MIMIX Promoter is available with MIMIX Enterprise only.
MIMIX for IBM WebSphere MQ
This book identifies requirements for the MIMIX for MQ feature which supports
replication in IBM WebSphere MQ environments. This book describes how to
configure MIMIX for this environment and how to perform the initial
synchronization and initial startup. Once configured and started, all other
operations are performed as described in the MIMIX Operations - 5250 book.
SNA and OptiConnect Support Discontinued
With the release of MIMIX V7.0, MIMIX no longer supports configurations using SNA
or OptiConnect for communications. The parameters are still available within MIMIX
version 7.0, however, this functionality will not be tested for MIMIX V7.0. Vision
Solutions will only assist customers to determine possible workarounds with issues
arising from the use of SNA or OptiConnect for communication in MIMIX V7.0.
10
Sources for additional information
This book refers to other published information. The following information, plus
additional technical information, can be located in the IBM System i and i5/OS
Information Center.
From the Information center you can access these IBM Power
TM
Systems topics,
books, and redbooks:
Backup and Recovery
API Programming
How to contact us
11
How to contact us
For contact information, visit our Contact CustomerCare web page.
If you are current on maintenance, support for MIMIX products is also available when
you log in to Support Central.
It is important to include product and version information whenever you report
problems.
MIMIX Monitor overview
12
CHAPTER 1 MIMIX Monitor overview
MIMIX Monitor enables you to customize and control events in your MIMIX and IBM
Power
TM
Systems environments. It is shipped and installed with MIMIX Enterprise
and MIMIX Professional.
Several monitors are shipped with MIMIX to perform specific functions within your
MIMIX environment. MIMIX Monitor also provides the capability to create your own
monitors to perform a specific action by triggering an event when a specified condition
occurs on your system. Each monitor is characterized by an event class that you can
use to watch for specific predefined conditions.
This book describes the function of shipped monitors, how to perform system
operations on monitors, and how to program your own monitors. This book also
describes how to use features for switching that interact with the capabilities of MIMIX
Monitor.
You can use MIMIX Monitor to:
Aid in automating your Power
TM
Systems operations and processes. MIMIX
Monitor can often eliminate your need to manually intervene when a specific
condition occurs on your system.
Check the health of your production system and move the processes to a backup
system when unplanned downtime occurs.
Off-load your production system during planned downtime. MIMIX Monitor can
automate switching operations between your production system and your backup
system.
You can use MIMIX Monitor from a backup system with other equipment to switch
hardware devices or software interfaces from a failed production system to the
backup system. MIMIX Monitor determines the need to switch to a backup system by
examining specific objects in a configuration that indicate the status of the production
environment or an interface to determine when switching to a backup system is
necessary. You can also use this configuration for planned switching.
These objects may or may not indicate the health of a production system. When the
object cannot be recovered, condition and event programs start the actions you want
to perform. When you use this capability in a switching operation, you can have
multiple monitors examining different conditions. When all of these conditions occur,
this can trigger a switch from your production system to your backup system.
Monitor concepts
13
Monitor concepts
MIMIX Monitor manages the following types of monitors:
Monitor objects supplied with MIMIX
User-defined monitor objects
Third party-supplied monitor objects
All monitor objects identify a condition and wait for it to occur on the system. When a
monitor object detects the condition, it causes the system to take action as specified
in the event program.
MIMIX Monitor enables you to customize monitor objects to the workflow and
environment of your enterprise. You can define monitors to run immediately,
continually, at scheduled intervals, or after a particular event. You can group monitor
objects together to coordinate activity among multiple monitor objects and to control
switching operations.
Components of a monitor
You can define a monitor for just about anything. When you define a monitor, you are
creating a monitor object. The monitor object identifies the:
Event class
Information that defines the event
Programs to call when the event occurs
Event classes are predefined conditions that trigger running programs associated
with a monitor. Each monitor object identifies an event class (EVTCLS parameter)
and a set of parameters that defines the event. This set of parameters that define the
event is referred to as the predefined condition. For example, the predefined
condition for a time monitor includes the time of day and the day or date to run the
specified programs.
MIMIX Monitor supports monitor objects based on the following event classes:
*INTERVAL, *J RN, *EXDJ RN, *MSGQ, *TIME, *GROUP, and *PREDFN. For more
information, see Event classes on page 71.
In addition to the event class and the parameters that define it, each monitor object
must have one or more of the following programs:
Condition program
Event program
Interface exit program
Although each type of program is optional, every monitor must have either a condition
program or an event program before the monitor can be started. If you create a
monitor to use only an interface exit program, your program needs to control all
operations of the monitor, including running the monitor.
The condition program defines the system or program activities to be performed and
is called when the predefined conditions are met. The condition program can be used
14
to check additional conditions before the event program is run. Any additional
conditions to check that are included in the condition program are referred to as user-
defined conditions. If you do not specify a condition program, the monitor will call
the event program without any further conditional checking.
The event program defines the event or action to initiate when the conditions (both
predefined and user-defined) occur. An event program is used to handle the triggered
event by taking some user-defined action.
When you use a monitor in a switching scenario, the event program contains your
switching commands and program calls.
The interface exit program provides an optional way of associating additional
programming or information with a monitor. Except where noted, the interface exit
program is called before (pre-exit) and after (post-exit) each requested operation for a
monitor object. In effect, an interface exit program can determine which operations
(either selecting an option on a display or running a command) will be processed for a
monitor and what activities will occur before and after the requested option is
processed. Additional displays that may require a response could be programmed to
appear before or after you see the display for the selected option.
For more information, see the following topics in the chapter Programming for
monitors on page 144
What to include in your programs on page 146
Condition program on page 149
Event program on page 150
Interface exit program on page 147
Switching concepts
Switching is commonly used to maintain high availability and prevent unplanned
downtime. Planned switches can also be performed for system maintenance,
backups, or for workload balancing.
Two features of MIMIX can assist you with switching in a MIMIX environment:
Switch definitions for automating and customizing switching. Switch definitions
permit the customization of your switching environment. Switch definitions identify
the participating systems, the devices, applications, commercially available
switching hardware, or TCP/IP addresses to be switched, and an event program
containing your customized switching program. A group monitor associated with
the switch definition provides the capability of defining multiple events that will
participate in the decision to switch.
MIMIX Model Switch Framework. The MIMIX Model Switch Framework provides a
consistent framework for performing planned or unplanned switches through a set
of commands and programs. MIMIX Model Switch Framework is the basis on
which newer, simplified switching user interfaces operate, such as the MIMIX
MIMIX Switch Assistant

interface within MIMIX Availability Manager. Typically, a


Certified MIMIX Consultant assists you in setting up the programs and the
switching environment.
Switching concepts
15
These features can be used individually or in combination. For example, a switch
definition can be defined to a MIMIX Model Switch Framework. The switch framework
processing will handle initiating switching for the hardware or IP impersonation
defined by the switch definition.
Optionally, the SETSWTSRC command for the switch definition can be performed by
the MIMIX Model Switch Framework event program. If this case, do not specify the
switch definition for the Switch definition (SWTDFN) parameter when creating the
switch framework definition with the CRTSWTFWK command.
Support for switch automation
MIMIX Monitor manages switch definitions that can be used with monitor objects to
enable automated switching between two systems. This switching support enables
you to customize:
What monitored objects participate in a decision to switch from a production
system to a backup system.
How the switch will be performed.
Which devices or applications will be switched.
When you use a monitor in a switching scenario, MIMIX Monitor uses a switch
definition in which you identify:
The systems participating in the switch.
The parameters associated with how the switch is controlled.
The event program that contains your customized switching programming.
The switch definition can specify commercially available switching hardware or
TCP/IP address impersonation.
The event program identifies and controls what is switched between systems. You
can switch users, applications, and hardware devices. When used with MIMIX
replication processes, you can switch the direction of replication within MIMIX by
including the appropriate MIMIX commands.
When the switch definition is created, a group monitor (event class *GROUP) is
automatically created to control the switch definition. The group monitor has the
same name as the switch definition and will call the event program specified in the
switch definition.
While the group monitor controls the switch, any combination of monitor objects can
participate in the decision to switch. When the participating monitor objects all
agree at a point in time that the objects they are monitoring have failed, the group
monitor is triggered to run the switching software. This is usually done by using the
Run Switch Framework (RUNSWTFWK) command in the group monitors event
program.
To form the association between a participating monitor and a group monitor, the
name of the group monitor is used as the value of the monitor group parameter
(MONGRP) on the participating monitor. Any active monitor that has the group
monitor name specified for this parameter will participate in the decision to trigger the
switch.
16
Participating monitor objects can be created to watch and attempt recovery on failed
lines, controllers, or devices that communicate with the production system. TCP/IP
interfaces and OptiConnect/400 connections that are defined through a transfer
definition can also be monitored to ensure that they remain active. Other objects such
as message queues or journals can also be monitored if there are messages or
transactions that might be appropriate to cause the triggering of a switch. When all
participating monitor objects have failed because these objects cannot be recovered,
are not communicating, or have received a message or a transaction that indicates
the necessity for switching, the group monitor triggers the events necessary to switch
users and applications to the backup system.
MIMIX Monitor also supports the ability to identify devices to a switch definition so you
can display messages about the status of the system during the switch.
The MIMIX Model Switch Framework
The MIMIX Model Switch Framework is a set of programs and commands designed to
provide a consistent framework for performing and controlling planned or unplanned
switches in a MIMIX environment. The MIMIX Switch Assistant user interface is based
on having a default MIMIX Model Switch Framework defined.
The MIMIX Model Switch Framework programs will enable you to more easily create
the switch code by standardizing the portions of code required to switch the MIMIX
environment. The only code that will need to be written will be the code for the
programs that alter the customers environment, such as starting or ending
production.
Additional switch information
If you plan to use MIMIX features for switching, before you begin you should read
Preparing for a switch on page 31 and Requirements for switching on page 32.
Two chapters in this book provide detailed information about switching support.
Working with switch definitions on page 79 describes how to create and work
with switch definitions.
Using the MIMIX Model Switch Framework on page 100 provides detailed
information about creating a default switch framework. A switch framework is the
basis for user interfaces such as MIMIX Switch Assistant.
Monitor objects supplied with MIMIX
17
Monitor objects supplied with MIMIX
MIMIX Enterprise and MIMIX Professional are shipped with a number of ready to use
monitor objects that meet a specific need. These monitors can be triggered by any
form of event class and may or may not enable you to customize them to your needs.
These monitors may also include their own additional menus, commands, and
displays.
The UPS monitor is shipped with MIMIX Monitor. You can use the UPS monitor to
check on the status of an uninterruptible power supply. Working with the UPS
monitor on page 123 provides an overview of the UPS monitor and describes how to
configure it.
Two remote journal link monitors are created automatically by the MIMIX Remote
J ournal support within MIMIX Enterprise or MIMIX Professional for each defined
remote journal. Their function is to monitor the journal message queues, one on the
source system and one on the target system for the specified remote journal. These
monitors provide added value to MIMIX user journal replication processes by allowing
MIMIX to automatically monitor the state of the remote journal link, to notify the user
of problems, and to automatically recover the link when possible. For more
information, see the MIMIX Administrator Reference book.
The MIMIX AutoNotify

feature within MIMIX Enterprise or MIMIX Professional uses


the shipped monitor for new object notification entries, MMNFYNEWE, to monitor
the source system in a replication environment. The AutoNotify feature makes it
easier to identify new objects in your production environment that may need to be
replicated. The MMNFYNEWE monitor is a journal monitor that watches the security
audit journal (QAUDJ RN) for newly created libraries, folders, or directories that are
not already included or excluded for replication by a data group and sends warning
notifications when its conditions are met. This monitor is shipped disabled. User
action is required to enable this monitor on the source system within your MIMIX
environment. Once enabled, the monitor will automatically start with the master
monitor. For more information about the conditions that are checked, see the MIMIX
Operations book.
The independent ASP threshold monitor, MMIASPMON, is shipped with MIMIX
Enterprise and MIMIX Professional and will notify you when an independent ASP
threshold is exceeded. This monitor improves the capability for detecting potential
independent ASP overflow conditions that put your high availability solution at risk
due to insufficient storage. This monitor checks the QSYSOPR message queue in
library QSYS for messages indicating that the amount of storage used by an
independent ASP exceeds a defined threshold. When this condition is detected, the
monitor sends a warning notification that the threshold is exceeded. The status of
warning notifications is incorporated into overall MIMIX status. The independent ASP
threshold monitor is shipped disabled. If you want to use this monitor, user action is
required to enable it on all systems in the MIMIX installation that are using
independent ASPs.
Note: Each ASP defaults to 90% as the threshold value. To change the threshold
value, you must use IBM's iSeries Navigator.
18
Two or more PAPM monitors run on the target system of each data group for which
the parallel access path maintenance function has been enabled and activated. The
monitors are created and started on the target system as a result of running the Start
Data Group (STRDG) command for a data group after the function has been enabled
by setting the parallel access path maintenance policy. The policy can be set for the
installation or for a specific data group.
The following monitors are associated with this function:
The parallel access path maintenance group monitor (short-data-group-
name_PAPM) provides ease of control over associated monitors that perform
parallel access path maintenance for a data group.
When this monitor exists, there are always associated monitors of one of the
following types:
The parallel access path maint monitor nnn (short-data-group-namePAPMnnn)
monitors are created and used for the automatic method of performing parallel
access path maintenance for a data group. The value of nnn identifies a unique
monitor, with values ranging from 000 through 999. The number of monitors is
determined by the policy setting.
The parallel access path maint monitor job-name (short-data-group-
nameJobname) monitors are created and used for the manual method of
performing parallel access path maintenance for a data group. The Jobname
identifies a unique monitor as determined by the policy setting and the
configuration file.
Monitors associated with MIMIX Global
The following monitors are associated with MIMIX Global. One or more may be
present, depending which license keys are present.
The application group status monitor is created when an application group
definition is created and has the same name as the application group. This
monitor sends a notification if the application group has any status values of
*ATTN. Logical replication status is not checked or reported as other mechanisms
exist for reporting replication status problems.
The switch delay monitor is created when a device CRG is created and has the
same name as the device CRG. This monitor sends notifications when conditions
exist that may require action to prevent a prolonged switch. Notifications are sent
when there are differences in UID values or in GID values between the primary
and backup nodes, when the number of independent ASP libraries falls below the
value specified in the independent ASP ratio policy, and when a library exists in
the ASP group of the switchable independent ASP on the primary node and also
exists in SYSBAS on the backup node.
The cluster administration domain monitor, named #MCADMDMN,
periodically checks for new objects to be added to the IBM cluster administrative
domain. The monitor will add a Monitored Resource Entry to the administrative
domain for all objects that have been found.
The cluster SAN connection monitor, named MCSANCNN, is automatically
created when the first data resource group of type of *PPRC or *LUN is created.
Monitor objects supplied with MIMIX
19
The monitor watches the QSYSOPR message queue for message CPPEA02
(*Attention Contact your hardware service provider now) which indicates there is a
potential problem with the fiber channel connection between the node and the
SAN storage device. If CPPEA02 is issued on a backup node and is not noticed,
that node can be adversely affected and the independent ASP associated with the
*LUN or *PPRC data resource group will not be able to switch to that backup
node. When the monitor detects message CPPEA02, it sends a notification to
inform you of the potential problem. The monitor is created on each node
associated with a data resource group and has a value of *NO for Start with
master monitor (AUTOSTR). To ensure that the Cluster SAN connection monitor
will automatically start and end with the master monitor on a system, the
AUTOSTR value must be changed to *YES.
20
Basic operation
MIMIX Monitor uses two specialized monitors to control and maintain all other
monitors except for the UPS monitor. These two controlling monitors, the master
monitor and the interval master monitor, are largely transparent to users.
Each monitor, including the master monitor, operates on a single system. Some
shipped monitors, such as those used by MIMIX AutoGuard, are provided on each
system in an installation but only run on the system permitted by policy settings.
MIMIX Availability Manager provides operational support for monitors. Operational
support and support for configuring user-defined monitors is available from a 5250
emulator from the Work with Monitors display. User interaction with switch definitions
occurs primarily through its associated group monitor, or through the Work with
Switch Definitions display from a 5250 emulator.
Using the MIMIX Model Switch Framework on page 100 identifies the preferred user
interfaces and describes MIMIX Model Switch Framework operation.
Interface exit program processing
When any operation is requested for a monitor by invoking a command or by taking
an option from a user interface, if an interface exit program exists it is called as a pre-
call to the operation. If the program is successful the requested operation on the
monitor is processed. If the operation is successful, the interface exit program is
called as a post-call to perform any additional user-specified processing. Figure 1
shows this operation.
Basic operation
21
Figure 1. Interaction with interface exit program.
Working with monitors on page 36 describes the operations that you can perform on
monitors.
Programming for monitors on page 144 describes the programming requirements
for the condition, event, and interface exit programs identified in a monitor.
Master monitor
Each system in a MIMIX environment has a master monitor that is used to control and
maintain all other monitors on that system. The master monitor is a job in the
MIMIXSBS subsystem that is automatically started when the subsystem is started as
long as the autostart job entry that was added during installation has not been
removed. The master monitor runs in the background. If the master monitor job ends
because of an unexpected error or termination, the master monitor attempts to restart
itself.
The Start MIMIX (STRMMX) and End MIMIX (ENDMMX) commands also include the
master monitor jobs along with other MIMIX processes. The STRMMX and ENDMMX
commands are the preferred method of ending all MIMIX activity within an installation.
If the master monitor is not already active, it will be started when there is a request to
start any other monitor.
When a request to start the master monitor is processed, MIMIX also starts any
monitors that specify *YES for the Start with master monitor (AUTOSTR) that are in a
Interface Exit Program
Pre-Call
Requested Action
Procesed
Interface Exit Program
Post-Call
Entry Point
This can be a request from a command, an option taken
from a Work with panel, or a call from a program.
Successful RC=0
Successful
Failure
RC=1
RC=0 or RC=1
22
status that permits them to be started. The master monitor also starts the interval
master monitor when the first asynchronous interval monitor (*INTERVAL) is started.
If you end the master monitor, all monitors are ended, but can be restarted. If the
MIMIXSBS subsystem is inactive, you cannot start any monitor. Requests to start a
monitor are queued and will process as soon as the subsystem is started.
With the exception of the UPS monitor, the master monitor starts and ends all other
monitors according to their configuration and status values, tracks which monitors
should be kept active, and restarts those monitors if necessary. When the master
monitor receives a request to start a monitor, the master monitor will start a job to
perform the monitor processing. The master monitor determines if the last monitored
event ran successfully and can instruct a monitor to end based on the status of the
event. The master monitor also maintains control of *TIME and *GROUP monitors
until they are triggered.
Monitor processing
MIMIX Monitor supports retry attempts for interval monitor objects, message queue
monitor objects, and journal monitor objects that use synchronous processing. When
a monitor is defined to use retry attempts, the conditions for which you are monitoring
must be met the number of times that you specify before the event program is called.
Common parameters on the CRTMONOBJ command on page 57 describes retry
processing in more detail.
MIMIX Monitor supports both synchronous and asynchronous processing of monitor
activity.
In synchronous processing, the monitor begins watching for the predefined condition.
When it occurs, the condition program is called. When the user-defined conditions in
the condition program are met, if the type of monitor supports retry attempts, the
monitor restarts the cycle of waiting for the predefined condition to occur and meeting
the user-defined conditions. The retry attempts cycle is complete when the predefined
conditions and user-defined conditions are met for the specified number of retry
attempts. When the specified number of retry attempts are completed, the monitor's
event program is called. When the event program completes, the monitoring process
is started again. Figure 2 shows this operation.
Basic operation
23
Figure 2. Synchronous processing.
MIMIX Monitor supports asynchronous processing for interval monitor objects,
message queue monitor objects, and journal monitor objects. With asynchronous
processing, the monitor watches for the predefined condition and starts a separate
process to handle running the condition and event programs. This enables the
monitor to start another cycle of watching for the predefined condition before MIMIX
Monitor completes the processing associated with the previous cycle. Figure 3 shows
this operation.
24
Figure 3. Asynchronous processing.
Basic operation
25
Interval master monitor
When the first interval monitor that uses asynchronous processing is started, the
master monitor starts a job for the interval master monitor. The interval master monitor
controls all monitoring for monitor objects that are classified as asynchronous interval
monitors by maintaining a time counter and submitting jobs. If the interval master
monitor ends abnormally, the master monitor is notified. The master monitor
resubmits the job for the interval master monitor. If the interval master monitor ends or
restarts, the time counter is reset to 0 at the time the interval master monitor starts
and jobs are submitted based on this value.
The interval master monitor maintains a list of interval monitors using asynchronous
processing that have an active status. The interval master monitor checks for
monitors that should be ended and removes them from the list. The interval master
monitor determines the minimum amount of time to wait for each active monitor
before submitting a separate job to run the condition and event programs specified for
the monitor. If the condition is met, the event program specified for the monitor is run.
The job tracks the status of the programs and updates the status for the monitor. If the
job ends abnormally, the interval master monitor is notified. The interval master
monitor determines if the job needs to be restarted. The interval master monitor
receives notification of user requests to start or end an asynchronous interval monitor.
Based on the result of the previous run of a monitor, the interval master monitor
determines if the monitor should be run for subsequent intervals or if it should be
ended.
Group monitor processing
A monitor is a member of a group when the value specified on its Monitor group
parameter (MONGRP) matches the name of an existing group monitor (a monitor of
event class *GROUP).
When a start is requested for a group monitor, by default, all monitors in the group
with a status of INACTIVE or FAILED are started.
When a group monitor is active, all monitors in the group participate in the decision to
run the group monitor's condition and event programs.
Monitors with a DISABLED status are not considered active. DISABLED monitors do
not participate in requests to start all monitors in the group and do not participate in
decisions for the group monitor. However, DISABLED monitors can still be started
individually. Once started, their status changes and the monitors will then participate
in the triggering decision for the group.
Monitors are considered active if their status is ACTIVE, SCHEDULED or, HELD.
The transitional statuses of STARTING and ENDING are also considered active.
FAILED/ACT is also considered active but, because its programs have experienced
an error, the group monitor recognizes this as a failed monitor. Monitors with a status
of INACTIVE can become active again if they are started individually.
Any state change of a monitor participating in a group causes the group monitor to
check the statuses of its participants. The group monitor remains active and does not
consider running its programs until after the status of the last active monitor changes
to INACTIVE, FAILED, or FAILED/ACT. If the last monitor ends successfully
26
(becomes INACTIVE) and the others are INACTIVE or DISABLED, the group monitor
is ended (set to INACTIVE). If the last monitor fails (FAILED or FAILED/ACT), or if it
ends successfully but one of the other monitors failed, the group monitor is triggered.
The event program for a group monitor associated with a switch definition should be
customized to run the commands necessary to switch the hardware, devices, or IP
addresses identified in the switch definition.
Basic operation
27
Figure 4. Group monitor processing
28
Additional switch definition operations
MIMIX Monitor provides a command (Set Switch Source) that can be added to the
event program called by the group monitor. This command will switch the hardware or
software specified in the switch definition. If the switch definition specifies a switch
type of *SM517A, a remote gang switch controller is used to switch a set of rack
chassis with physically attached hardware from one system to another. If the switch
type is *TCP, the TCP/IP interface specified is stopped on the production system and
started on the backup system so that users accessing the production system through
that interface are switched to the backup system.
The Work with Switch Definition display and its commands enable you to create,
change, delete, display, start, and end a switch definition. You can also set which
system will be the source of data when the switch occurs, access the monitors
associated with the switch definition, display status, run the condition and event
programs associated with the switch definition, and work with device entries
associated with the switch definition.
The commands on the Work with Switch Device Entries enable you to assign devices
to a switch definition so the event program notifies users at these devices of the
status of the system during the switch.
29
CHAPTER 2 Checklist: preparation
You should consider where MIMIX Monitor could help you in meeting your availability
management requirements. Because MIMIX Monitor is typically used within a MIMIX
installation, much of your planning and preparation should be considered in the
context of your total MIMIX environment.
Do the following to prepare to use MIMIX Monitor:
1. If you have not already done so, install and configure your MIMIX Enterprise or
MIMIX Professional environment.
2. MIMIX Monitor uses the MIMIXOWN profile that is shipped with authority to all
objects. To protect your systems from misuse, implement additional security
processes based on the information in Security considerations on page 30.
3. If you have not already done so, turn on product-level security and grant authority
to user profiles to control access to the MIMIX products. The Using License
Manager book documents these tasks.
4. If you are updating an existing version 7 installation of MIMIX, review any critical
monitors and verify that their status is correct.
5. Ensure that any system definitions and transfer definitions you will need for a
monitor are configured for the MIMIX replication environment. Refer to the MIMIX
Administrator Reference book.
6. If it is not already active, start the MIMIX subsystem using Starting the MIMIXSBS
subsystem on page 33.
7. If you plan to use the UPS monitor, you need to configure the monitor. You may
want to customize certain operations using the Checklist: UPS configuration on
page 126.
8. If you plan to use the switching support within MIMIX Monitor, use topic Preparing
for a switch on page 31 to guide you in preparing the systems for switching,
creating a switch definition and an event program, and reviewing and testing your
switching procedures.
9. Create any monitors you need that are not shipped with MIMIX. If you need user-
defined monitors, you need to create monitors and the programs called by each
monitor. For more information refer to Working with monitors on page 36 and
Programming for monitors on page 144.
30
Security considerations
Monitors within MIMIX Monitor run under the MIMIXOWN user profile which is
shipped with special authority to all objects (*ALLOBJ ). When you create a monitor,
the user profile creating that monitor must have authority to the interface exit program,
condition program, or event program that is defined to the monitor MIMIX Monitor.
*ALLOBJ authority is needed for MIMIX Monitor so that it has access to all objects
that will be monitored, such as journals and message queues, the job scheduler, and
any interface exit programs, condition programs, and event programs called by the
monitor.
If you are using MIMIX Switch Assistant or a MIMIX Model Switch Framework to
switch the direction of replication and you changed the authority level of the
MIMIXOWN user profile, the MIMIXOWN user profile needs to be granted explicit
authority to the following:
Any custom user programs.
All MIMIX libraries to be switched.
Any communications configurations to be switched.
Change authority (*CHANGE) to the output queues of user profiles submitting
switching commands so that MIMIX can write to spooled files.
For more information about security considerations with the MIMIXOWN user profile,
refer to topic Security for MIMIXOWN user profile in the Using License Manager
book.
Preparing for a switch
31
Preparing for a switch
If you plan to use the switching functions within MIMIX Monitor, you will need to do the
following:
1. Verify that you have all the requirements for switching. See Requirements for
switching on page 32.
2. If you plan to use MIMIX Monitor to control a hardware switching device, ensure
that the hardware is installed.
3. Create a switch definition for the switch using the topic Creating switch
definitions on page 81. The switch will automatically create a group monitor that
is used for managing the switching operations you define in an event program.
If you are doing IP impersonation and hardware switching you will need two switch
definitions. The IP impersonation switching is usually done by specifying the IP
switch name to the MIMIX Model Switch Framework definition. If you are using
MIMIX Model Switch Framework to perform IP impersonation and hardware
switching the event program of the group monitor will need to issue the
RUNSWTFWK command. You will also need to change the event program to
issue the SETSWTSRC command for the hardware switch definition. If you are
using MIMIX Model Switch Framework and the switch definition is defined to the
switch framework, the SETSWTSRC command is automatically done for you.
4. Define, to the switch definition, any devices that you want to allocate during the
switch and display a message to users. Use either of the following topics:
Adding all devices to a switch definition on page 96
Adding a device entry on page 96
5. Create additional monitors that will be associated with the group monitor and
which will participate in the decision to trigger the event program containing your
switching operations. Refer to Creating monitors on page 61.
Notes:
The name of the switch definition is used for the group monitor and to form the
association with other participating monitors. Use this name as the value for
the Monitor group (MONGRP) parameter on the participating monitors.
To monitor a communications object (line, controller, or device), create an
interval monitor with a subclass of *CFG.
To monitor a TCP/IP interface, create an interval monitor with subclass *TCP.
6. Create all of the following programs that you need using Programming for
monitors on page 144.
a. The event program defined to the switch definition (and in the group monitor).
This program should contain any commands and calls to programs that you
need to perform the switch.
b. If needed, a condition program and interface exit program for the group
monitor.
32
c. Additional condition programs and event programs you need for any monitors
that will participate in the decision to trigger the group monitor's condition and
event programs.
d. Any interface exit programs you need for any of the participating monitors.
7. Verify that the participating monitors function as you require.
8. Schedule time to perform a test of the switching operation.
Note: To automate your switch process, refer to Using the MIMIX Model Switch
Framework on page 100.
Requirements for switching
To use MIMIX Monitor to perform switching, you need the following:
Two or more IBM Power
TM
Systems, or partitions; one system must be
designated as a backup system.
Communications facilities between the production system and a backup system. If
you have more than one production system to switch to the backup, each
production system must have communication facilities between it and the backup
system. Additionally, when a switch occurs you will still need to maintain a
communications channel that MIMIX can use that is not affected by the switch.
MIMIX Enterprise or MIMIX Professional must be installed. Refer to the Using
License Manager for the system and software requirements for these products
and details about where you need these products installed.
System definitions and transfer definitions configured for the replication
environment. If MIMIX is not already configured, you can use the MIMIX
Administrator Reference book to help you.
Configuration dependent equipment.
Switching hardware (optional). If you plan to use MIMIX Monitor to control a
hardware switching device, refer to Planning for switching hardware on
page 177.
MIMIX Model Switch Framework also requires that a switch framework be
configured. For more information, see Operating requirements on page 103.
Starting the MIMIXSBS subsystem
33
Starting the MIMIXSBS subsystem
By default, all MIMIX products run in the MIMIXSBS subsystem that is created when
you install the product. This subsystem must be active before you can use the MIMIX
products.
If the MIMIXSBS is not already active, start the subsystem by typing the command
STRSBS SBSD(MIMIXQGPL/MIMIXSBS) and pressing Enter.
Note: You can ensure that the MIMIX subsystem is started after each IPL by adding
this command to the end of the startup program for your system. Due to the
unique requirements and complexities of each MIMIX implementation, it is
strongly recommended that you contact your Certified MIMIX Consultant to
determine the best way in which to design and implement this change.

34
Accessing the MIMIX Main Menu
The MIMIX command accesses the main menu for a MIMIX installation. The MIMIX
Main Menu has two assistance levels, basic and intermediate. The command defaults
to the basic assistance level, shown in Figure 5, with its options designed to simplify
day-to-day interaction with MIMIX. Figure 6 shows the intermediate assistance level.
The options on the menu vary with the assistance level. In either assistance level, the
available options also depend on the MIMIX products installed in the installation
library and their licensing. The products installed and the licensing also affect
subsequent menus and displays.
Accessing the menu - If you know the name of the MIMIX installation you want, you
can use the name to library-qualify the command, as follows:
Type the command library-name/MIMIX and press Enter. The default name of
the installation library is MIMIX.
If you do not know the name of the library, do the following:
1. Type the command LAKEVIEW/WRKPRD and press Enter.
2. Type a 9 (Display product menu) next to the product in the library you want on the
Lakeview Technology Installed Products display and press Enter.
Changing the assistance level - The F21 key (Assistance level) on the main menu
toggles between basic and intermediate levels of the menu. You can also specify the
the Assistance Level (ASTLVL) parameter on the MIMIX command.
Figure 5. MIMIX Basic Main Menu
MIMIX Basic Main Menu
Syst em: SYSTEM1
MI MI X

Sel ect one of t he f ol l owi ng:

1. Wor k wi t h appl i cat i on gr oups WRKAG
2. St ar t MI MI X
3. End MI MI X
4. Swi t ch al l appl i cat i on gr oups
5. St ar t or compl et e swi t ch usi ng Swi t ch Asst .
6. Wor k wi t h dat a gr oups WRKDG

10. Avai l abi l i t y st at us WRKMMXSTS
11. Conf i gur at i on menu
12. Wor k wi t h moni t or s WRKMON
13. Wor k wi t h messages WRKMSGLOG
14. Cl ust er menu
Mor e. . .
Sel ect i on or command
===>__________________________________________________________________________
______________________________________________________________________________
F3=Exi t F4=Pr ompt F9=Ret r i eve F21=Assi st ance l evel F12=Cancel
( C) Copyr i ght Vi si on Sol ut i ons, I nc. , 1990, 2010.
Accessing the MIMIX Main Menu
35
Note: On the MIMIX Basic Main Menu, options 5 (Start or complete switch using
Switch Asst.) and 10 (Availability Status) are not recommended for
installations that use application groups.
Figure 6. MIMIX Intermediate Main Menu
MIMIX Intermediate Main Menu
Syst em: SYSTEM1
MI MI X
Sel ect one of t he f ol l owi ng:

1. Wor k wi t h dat a gr oups WRKDG
2. Wor k wi t h syst ems WRKSYS
3. Wor k wi t h messages WRKMSGLOG
4. Wor k wi t h moni t or s WRKMON
5. Wor k wi t h appl i cat i on gr oups WRKAG
6. Wor k wi t h audi t s WRKAUD
7. Wor k wi t h pr ocedur es WRKPROC

11. Conf i gur at i on menu
12. Compar e, ver i f y, and synchr oni ze menu
13. Ut i l i t i es menu
14. Cl ust er menu
Mor e. . .
Sel ect i on or command
===>__________________________________________________________________________
______________________________________________________________________________
F3=Exi t F4=Pr ompt F9=Ret r i eve F21=Assi st ance l evel F12=Cancel
( C) Copyr i ght Vi si on Sol ut i ons, I nc. , 1990, 2010.
Working with monitors
36
CHAPTER 3 Working with monitors
This section describes how to perform day-to-day operations for monitors.
MIMIX Availability Manager provides support for day-to-day operation of monitors.
Through a 5250 emulator, the Work with Monitors display also provides operational
support for monitors, including less frequently used operations, as well as
configuration support.
Some shipped monitors, such as the UPS monitor, may include additional menus and
commands. Working with the UPS monitor on page 123 describes additional
function that is unique to the UPS monitor.
Starting and ending the master monitors
37
Starting and ending the master monitors
In a MIMIX environment, there is a master monitor job on each system that controls
all other monitors on the same system. The master monitor job runs in the MIMIXSBS
subsystem. When the MIMIXSBS subsystem is started on a system, the master
monitor job automatically starts on that system as long as the autostart job entry
created during installation remains in the subsystem. If the master monitor is ended,
starting any monitor will start the master monitor.
The Start MIMIX (STRMMX) and End MIMIX (ENDMMX) commands also address the
master monitor jobs along with other MIMIX processes. The STRMMX and ENDMMX
commands are the preferred method of starting and ending all MIMIX activity within
an installation. The STRMMX command will start all master monitors on all systems in
a MIMIX installation. In turn, the master monitor on each system will start all monitors
that are not disabled and which are configured to automatically start with the master
monitor. The ENDMMX command will end all monitors that are in an active state.
Then, the master monitor on each system is ended.
You may also need to start or end a master monitor independently of other MIMIX
jobs. You can do so from either MIMIX Availability Manager or from a 5250 emulator.
The master monitor also starts the interval master monitor when the first
asynchronous interval monitor is started. There is no way to directly interact with the
interval master monitor.
Starting the master monitor on the local system
The master monitor will attempt to restart itself a limited number of times when it ends
because of an error or if the job is abnormally ended. If an error condition prevents the
master monitor from restarting itself, the master monitor will end. This causes all other
active monitors, except for the UPS monitor, to also end. When the master monitor is
started, other monitors that are configured to start with the master monitor and which
are not disabled are started.
From MIMIX Availability Manager, do the following to start the master monitor:
1. Select Monitors from the Details area in the navigation bar.
2. The master monitor is first monitor in the list displayed on the Monitors window.
Select the Start action and click .
3. The Start Master Monitor window opens. Click OK.
From a 5250 emulator, the master monitor does not appear in the list shown on the
Work with Monitors display. Use the following command, specifying the name of the
MIMIX installation library:
installation-library/ STRMSTMON
The master monitor job name will be the installation library name when it is started.
Ending the master monitor on the local system
You may need to end the master monitor when cleaning up the runtime environment,
or when a CustomerCare representative directs you to end the master monitor.
38
Ending the master monitor also causes all other active monitors, except for the UPS
monitor, to end. These monitors, including the interval master monitor, will not function
correctly without the master monitor.
From MIMIX Availability Manager, do the following to end the master monitor:
1. Select Monitors from the Details area in the navigation bar.
2. The master monitor is first monitor in the list displayed on the Monitors window.
Select the End action and click .
3. The End Master Monitor window opens. Click OK.
From a 5250 emulator, the master monitor does not appear in the list shown on the
Work with Monitors display. Use the following command, specifying the name of the
MIMIX installation library:
installation-library/ ENDMSTMON
Starting and ending the interval master monitor
There is no direct way for you to control the interval master monitor. The interval
master monitor is started automatically by the master monitor when an asynchronous
interval monitor starts.
If you need to start or end the interval master monitor, you can do so by starting or
ending the master monitor. You can also end the interval master monitor by specifying
MONITOR(*ALL) on the ENDMON (End Monitor) command.
Displaying a list of monitors on a system
39
Displaying a list of monitors on a system
From MIMIX Availability Manager, select Monitors from the Details area in the
navigation bar. The list of monitors shown on the Monitor window includes the master
monitor as the first monitor listed. The master monitor is followed by shipped monitors
and user-defined monitors that are sorted by status, then by name.
From a 5250 emulator, select option 12 (Work with monitors) from the MIMIX Basic
Main Menu and press Enter. The list of monitors shown on the Work with Monitors
display does not include the master monitor. Predefined monitors may be restricted to
using a subset of the available options.
Actions available for monitors
The status of a monitor determines what actions you can perform on a monitor. Table
1 lists the status values required for each action and indicates where the action can
be performed. Table 2 describes the status values.
Table 1. Required status values for actions on monitors
Action Available From Required Status Value
(5250 emulator nomenclature)
MIMIX
Availability
Manager
5250
emulator
Create Yes
Change Yes Inactive or Disabled
Copy Yes
Delete Yes Inactive, Failed, or Disabled
Display Yes
Print Yes
Rename Yes Inactive, Failed, or Disabled
Start Yes Yes Inactive, Failed, or Disabled
End Yes Yes Active, Scheduled, Held, or
Failed/Act
Work with
a
Yes
Status (details) Yes
Hold Yes Yes Active or Scheduled
Release Yes Yes Held
Run Yes Yes
Enable Yes Yes Disabled
Disable Yes Yes Inactive or Failed
40
Monitor status values
Table 2 identifies the possible status values for a monitor. In MIMIX Availability
Manager, an icon can represent more than one status value. Hover over the icon to
see the status value.
Export Yes
Import Yes
a. This action is only valid when a monitor has an interface exit program that supports it.
Table 1. Required status values for actions on monitors
Action Available From Required Status Value
(5250 emulator nomenclature)
MIMIX
Availability
Manager
5250
emulator
Table 2. Possible status values for monitors
MIMIX Availability
Manager
5250 emulator Description
Action
required
FAILED/ACT The resulting actions of the monitor failed but the monitor remains
active. If the monitor belongs to a group it will participate in the
decision to trigger the group.
FAILED The monitor has failed. The event program for the monitor
requested that the monitor be ended and the status set to failed,
an unexpected error occurred in the monitor, or the maximum
number of restarts have been attempted. If the monitor belongs to
a group, it will participate in the decision to trigger the group.
Partially
Active
ENDING The monitor is ending normally. Once the monitor completes its
shutdown activities, the status will be changed to either INACTIVE
or FAILED depending on the return value from the last call to the
event program. User action may be required if the state persists.
In MIMIX Availability Manager, this icon may also be displayed
when a monitor is starting.
Ended INACTIVE The monitor has not been started. The monitor is not active.
User action is necessary to start the monitor.
Held HELD The monitor has been started, but its activity is suspended until a
release is requested.
Unknown The status of the monitor is unknown because collector services is
not active. User action is necessary to start collector services.
This status value is only possible in MIMIX Availability Manager.
Disabled DISABLED The monitor has been disabled and is not active. If the monitor
belongs to a group, it will not participate in the starting or triggering
of the group. A disabled monitor is not affected by master monitor
actions. User action is necessary to enable the monitor.
Displaying a list of monitors on a system
41
(No icon) OK ACTIVE The monitor has been started and is active.
SCHEDULED The monitor is scheduled. This value is only valid for time
monitors.
Table 2. Possible status values for monitors
MIMIX Availability
Manager
5250 emulator Description
42
Starting a monitor
Only monitors with status values indicated in Table 1 can be started.
If a group monitor is started, unless you specify otherwise, the request is extended to
all monitors defined to the selected group monitor that have a status that allows them
to be started. The status of a monitor may prevent it from participating in the start
request. Monitors with a disabled status are never started with a group monitor.
From MIMIX Availability Manager, do the following to start a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Start action and click . The Start Monitor window opens.
3. If the selected monitor is a journal or extended journal monitor, you will see fields
for J ournal Receiver and Starting sequence number. Select the starting journal
receiver and the first journal entry to be considered for monitoring.
4. If the selected monitor is a group monitor, select a value for the Scope of request.
To start only the group monitor itself, select Name.
5. Click OK.
From a 5250 emulator, do the following to start a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 9 (Start) next to the monitor you want
and press F4 (Prompt).
3. The Start Monitor (STRMON) display appears. If the monitor you are starting is a
journal monitor or an extended journal monitor, you will see prompts for Journal
Receiver and Starting large sequence number. Specify values that identify the
starting journal receiver and the first journal entry to be considered for monitoring.
4. If the monitor you are starting is a group monitor, press F10 (Additional
parameters). The Scope of request prompt appears. If you want to start only the
group monitor itself, specify *NAME.
5. Press Enter.
Ending a monitor
43
Ending a monitor
Only monitors with status values indicated in Table 1 can be ended.
If a group monitor is ended, unless you specify otherwise, the request is extended to
all monitors defined to the selected group monitor that have a status that allows them
to be ended. The status of a monitor may prevent it from participating in the end
request.
From MIMIX Availability Manager, do the following to end a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the End action and click . The End Monitor window opens.
3. If the selected monitor is a group monitor, select a value for the Scope of request.
To end only the group monitor itself, select Name.
4. Click OK.
From a 5250 emulator, do the following to end a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 10 (End) next to the monitor you
want and press F4 (Prompt).
3. The End Monitor (ENDMON) display appears.
4. If the monitor you are ending is a group monitor, press F10 (Additional
parameters). The Scope of request prompt appears. If you want to end only the
group monitor itself, specify *NAME.
5. To process the request, press Enter.
44
Running condition and event programs for a monitor
You can immediately run the condition and event programs associated with a monitor.
The selected monitor name is passed to the Run Monitor (RUNMON) command. The
programs are run under a separate job without performing any of the predefined
condition checking that is standard for the event class of the monitor and without
requiring an active status.
The results of the run will be reflected in the monitors status. If the event program
does not run successfully, the event failed flag and the shutdown flag are set to the
same values as if the program failed when triggered by conditions specified for
normal operation of the monitor. If the condition program is called, you will see
messages in the message log indicating whether the condition was met. If the event
program is called, you will see a message in the message log indicating the return
code from the event program. The monitor detailed status is only updated if the event
program is called.
Ensure that the exit program, event program, and condition program you specify for a
monitor are owned by a valid user profile. If you use a user profile that is not valid, the
monitor job that is running the program will end abnormally. A user profile may be not
valid if it is disabled or if *NONE is specified for its password. If you encounter this
situation, change the ownership of the program or change the user profile.
From MIMIX Availability Manager, do the following to immediately run the condition
and event programs associated with a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Run action and click .
3. The Run Monitor window opens. Click OK.
From a 5250 emulator, do the following to immediately run the condition and event
programs associated with a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 18 (Run) next to the monitor you
want and press Enter.
Enabling or disabling a monitor
45
Enabling or disabling a monitor
The status of a monitor determines what actions you can perform. Table 1 identifies
the status values required to enable or disable a monitor by invoking the Change
Monitor Status (CHGMONSTS) command.
For monitors defined to a group monitor, status determines whether the monitors
participate in group decisions. The ability to change status is useful for preventing or
ensuring participation by members of a group. A monitor is a member of a group when
the value specified on its Monitor group parameter (MONGRP) matches the name of
an existing group monitor (event class of *GROUP).
Enabling a monitor
Enabling a monitor changes its status from DISABLED to INACTIVE.
Once enabled, a monitor can be started and run its normal operations, and other user
actions can be taken as indicated in Table 1. Once enabled, a monitor can be started
by the master monitor if it is configured to do so. If the monitor is defined to a group, it
will participate in requests to start all monitors in the group and in decisions for the
group monitor.
From MIMIX Availability Manager, do the following to enable a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Enable action and click .
3. The Change Monitor Status window opens. Select Enabled for the Status value.
4. If the selected monitor is a group monitor, select a value for the Scope of request.
To enable only the group monitor itself, select Name.
5. Click OK.
From a 5250 emulator, do the following to enable a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 20 (Enable) next to the monitor you
want and press F4 (Prompt).
3. The Change Monitor Status (CHGMONSTS) display appears. The value
*ENABLED should be preselected for the Status prompt.
4. If the selected monitor is a group monitor, press F10 (Additional parameters). The
Scope of request prompt appears. If you want to enable only the group monitor
itself, specify *NAME.
5. Press Enter.
Disabling a monitor
Table 1 identifies the status values required before a monitor can be disabled.
46
A monitor with a DISABLED status cannot run its normal operations and is prevented
from starting with the master monitor if configured to do so. If it is defined to a group, it
will not participate in requests to start all monitors in the group and will not participate
in decisions for the group monitor.
DISABLED monitors can be started individually. Once they are started, they will
participate in the triggering decision for any group to which they belong.
From MIMIX Availability Manager, do the following to disable a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Disable action and click .
3. The Change Monitor Status window opens. Select Disabled for the Status value.
4. If the selected monitor is a group monitor, select a value for the Scope of request.
To enable only the group monitor itself, select Name.
5. Click OK.
From a 5250 emulator, do the following to disable a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 21 (Disable) next to the monitor you
want and press F4 (Prompt).
3. The Change Monitor Status (CHGMONSTS) display appears. The value
*DISABLED should be preselected for the Status prompt.
4. If the selected monitor is a group monitor, press F10 (Additional parameters). The
Scope of request prompt appears. If you want to enable only the group monitor
itself, specify *NAME.
5. Press Enter.
Placing a monitor on hold
47
Placing a monitor on hold
Placing a monitor on hold suspends all processing until a release request is received.
Table 1 identifies the status values required before a monitor can be held.
If a group monitor is held, unless you specify otherwise, the request is extended to all
monitors defined to the selected group monitor that have a status that allows them to
be held. The status of a monitor may prevent it from participating in the request.
From MIMIX Availability Manager, do the following to hold a monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Hold action and click .
3. The Hold Monitor window opens. If the selected monitor is a group monitor, select
a value for the Scope of request. To hold only the group monitor itself, select
Name.
4. Click OK.
From a 5250 emulator, do the following to start a monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 13 (Hold) next to the monitor you
want and press F4 (Prompt).
3. The Hold Monitor (HLDMON) display appears. If the monitor you selected is a
group monitor, press F10 (Additional parameters). The Scope of request prompt
appears. If you want to start only the group monitor itself, specify *NAME.
4. Press Enter.
48
Releasing a held monitor
When you release a monitor that is being held (status of HELD), the monitor
continues processing at the point where processing was suspended when it was
placed on hold.
If a held group monitor is released, unless you specify otherwise, the request is
extended to all monitors defined to the selected group monitor that have a status of
HELD.
From MIMIX Availability Manager, do the following to release a held monitor:
1. Select Monitors from the Details area in the navigation bar.
2. Locate the monitor you want in the list displayed on the Monitors window. Select
the Release action and click .
3. The Release Monitor window opens. If the selected monitor is a group monitor,
select a value for the Scope of request. To release only the group monitor itself,
select Name.
4. Click OK.
From a 5250 emulator, do the following to release a held monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 14 (Release) next to the monitor you
want and press F4 (Prompt).
3. The Release Monitor (RLSMON) display appears. If the monitor you are releasing
is a group monitor, press F10 (Additional parameters). The Scope of request
prompt appears. If you want to release only the group monitor itself, specify
*NAME.
4. Press Enter.
Working with the message log
49
Working with the message log
The MIMIX message log provides a common location for you to see all messages
related to MIMIX products. A consolidated list of messages for all systems in the
installation library is available on the management system.
Note: The target system only shows messages that occurred on the target system.
LVI messages are informational messages and LVE messages are error or diagnostic
messages. CPF messages are generated by an underlying operating function and
may be passed up to the MIMIX product.
Do the following to access the MIMIX message log:
1. Do one of the following to access the message log display:
From the MIMIX Basic Main Menu, select option 13 (Work with messages) and
press Enter.
From the MIMIX Intermediate Main Menu, select option 3 (Work with
messages) and press Enter.
2. The Work with Message Log appears with a list of the current messages. The
initial view shows the message ID and text.
3. Press F11 to see additional views showing the message type, severity, the
product and process from which it originated, whether it is associated with a group
(for MIMIX, a data group), and the system on which it originated.
4. You can subset the messages shown on the display. A variety of subsetting
options are available that allow you to manage the message log more efficiently.
5. To work with a message, type the number of the option you want and press Enter.
The following options are available:
4=Remove - Use this option if you want to delete a message. When you select
this option, a confirmation display appears. Verify that you want to delete the
messages shown and press Enter. The message is deleted only from the local
system.
5=Display message - Use this option to view the full text of the first level
message and gain access to the second level text.
6=Print - Use this option to print the information for the message.
8=Display details - Use this option to display details for a message log entry
including its from and to program information, job information, group
information, product, process, originating system, and call stack information.
9=Related messages - Use this option to display a list of messages that relate
to the selected message. Related messages include a summary and any detail
messages immediately preceding it. This can be helpful when you have a large
message log list and you want to show the messages for a certain job.
12=Display job - If job information exists on the system, you can use this option
to access job information for a message log entry. The Work with J obs display
appears from which you can select options for displaying specific information
about the job.
50
Other operations available from a 5250 emulator
The Work with Monitors display provides options for additional operations that are
less frequently needed. The following procedures are only available from a 5250
emulator.
Displaying monitor status details
The Work with Monitors display shows the status of each monitor. Use this procedure
to see more detailed information about a monitor, including the last time the event
program was run, the conditions that triggered it, and whether the event program was
run successfully.
To display the status of a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 15 (Status) next to any monitor and
press Enter.
Note: If you select the UPS monitor, the UPS Monitor Status display will appear.
Refer to Displaying status for the UPS monitor on page 141.
3. The Display Monitor Status display appears. The display includes the monitor
name and information about the monitor including its event class, status, the
outcome of the last time the event program was called, and the date and time of
that call.
Each type of monitor also includes additional information that is specific to its
event class.
If the monitor is a group monitor, you will see a summary of how many monitors
defined to the group have the following current status values: active, inactive,
failed, and failed/active. These are defined as follows:
Active monitors are monitors with a status of ACTIVE, HELD, SCHEDULED,
STARTING, or ENDING.
Inactive monitors are monitors with an INACTIVE or DISABLED status.
Failed monitors are monitors with a status of FAILED.
Failed/active monitors are monitors with a status of FAILED/ACT.
If the last active monitor in the group becomes INACTIVE the group monitor
will be ended. If the last active monitor in the group becomes FAILED or
FAILED/ACT it will trigger the group monitor and cause the exit programs to
run.
Note: The group monitor status will stay ACTIVE until after the event program
completes and then the status will be updated at that time.
Other operations available from a 5250 emulator
51
Changing monitors
You can change any of the parameters that define a monitor except for the name of
the monitor.
To change a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, verify that the status of the monitor you want
is INACTIVE or DISABLED.
3. Type a 2 (Change) next to the monitor you want and press Enter.
4. The Change Monitor Object (CHGMONOBJ ) display appears. You can change
the value shown for any prompt except for the name of the monitor.
5. Press Enter to display prompts that are associated with the specified event class.
6. You can change the value shown for any of the additional prompts.
7. When you are ready to accept the changes, press Enter.
8. If the value of the Interface exit program is *CMD, the Change Monitor Information
(CHGMONINF) display appears. If necessary, change the command information
and press Enter.
Copying monitors
To copy a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 3 (copy) next to the monitor you want
and press Enter.
3. The Copy Monitor Object (CPYMONOBJ ) display appears. At the To monitor
prompt, specify a name for the new monitor. The name you specify cannot already
exist.
Note: You cannot copy a group monitor.
Deleting a monitor
You cannot delete a group monitor that has an associated switch definition using this
procedure. To delete a group monitor that is associated with a switch definition, refer
to Deleting a switch definition on page 86.
To delete a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, verify that the status of the monitor you want
is INACTIVE or DISABLED.
3. Type a 4 (Delete) next to the monitor you want and press Enter.
52
4. The Confirm Delete of Monitors display appears. Verify that the name of the
monitor shown is the monitor you want. Press Enter to delete the monitors or F12
(Cancel) to return to change your selection.
Displaying a monitor
To display a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 5 (Display) next to the monitor you
want and press Enter.
3. The Display Monitor Object display appears. When you are ready to continue,
press Enter.
4. If the value of the Interface exit program is *CMD, the Display Monitor Information
(DSPMONINF) display appears. When you are ready to continue, press Enter.
Printing a monitor
To print a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 6 (Print) next to the monitor you want
and press Enter.
3. A spooled file named MXMON is created that contains the monitor description.
Use your local process to print your spooled files.
Renaming a monitor
Do the following to rename an existing monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, verify that the status of the monitor you want
is INACTIVE or DISABLED.
3. Type a 7 (Rename) next to the monitor you want and press Enter.
4. The Rename Monitor Object (RNMMONOBJ ) display appears. At the To monitor
prompt, specify a new name for monitor. The name you specify cannot already
exist.
5. Press Enter to rename the existing monitor.
Working with information for a monitor
To work with user-specified information associated with a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
Other operations available from a 5250 emulator
53
2. From the Work with Monitors display, type a 12 (Work with) next to the monitor
you want and press Enter.
Note: This option is only valid for monitors that have an interface exit program
specified.
3. The information you will see is dependent on what the interface exit program has
been programmed to do when this option is selected. When this option is used,
the interface exit program is only called as a pre-process call.
Exporting and importing monitors
MIMIX Monitor includes function that enables you to export and import monitors to
another installation of MIMIX Monitor on the same system or on another system. This
makes it easy for you to use the same monitor in another product library and to add
additional packaged monitors.
Notes:
MIMIX does not support exporting or importing switch definitions or switch device
entries.
It is recommended that you export from a previous or same release and import
from the same or a higher release.
If you import a *GROUP monitor that represents a switch definition into a monitor
installation, you will not be able to create a switch definition on the imported
system for that group monitor. This is because the group monitor is created when
the switch definition is created and cannot exist before the switch definition is
created. If you want to create a switch definition of that name, you will have to
delete the associated group monitor.
The monitors that participate in the group would not be deleted.
When you create the switch definition and the group monitor, you can add the
switch device entries.
Exporting a monitor
When you export a monitor, you can export directly to another product library that
contains MIMIX Monitor on the same system or to a holding file. The holding file can
be sent to another system where it can be imported into a product library that contains
MIMIX Monitor.
To export a monitor, do the following:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 39 (Export) next to any monitor and
press Enter.
3. The Export Monitor Object (EXPMONOBJ ) display appears. Do the following:
Note: If you want to export multiple monitors type EXPMONOBJ on a command
line and press Enter. Specify a generic name or the value *ALL at the
Monitor prompt.
54
a. At the Monitor object file prompt, specify a file and library to which the monitor
object will be exported. The default values *DFT and *CURLIB save the
monitor object in file MM1050P in the current library.
If you want to export the monitor object directly to another product library that
contains MIMIX Monitor, specify MM1000P for the file name and specify the
name of the library.
If the file already exists, the file must have the same record format as
MM1000P in MIMIX Monitor's product library.
b. At the Monitor information file prompt, specify a file and library to which the
command information associated with the monitor will be exported. Command
information can be associated with any monitor that has *CMD specified for its
interface exit program. The default values *DFT and *CURLIB save the
command information in file MM2050P in the current library.
If you do not want to export the command information associated with the
monitor, specify *NONE.
To export the command information directly to another product library that
contains MIMIX Monitor, specify MM2000P for the file name and specify the
name of the library.
If the file already exists, the file must have the same record format as
MM2000P in MIMIX Monitor's product library.
c. At the Replace or add records prompt, specify what action to take if the monitor
object and corresponding command information already exist in the files
specified. The default value *REPLACE indicates that, if the objects or
information exist, the existing monitor object and command information in the
files will be replaced. The value *ADD indicates the monitor object and
command information is added to the file only if they do not already exist.
d. At the Create files prompt, specify whether or not the files specified should be
created if they do not exist.
4. Press Enter to export the monitor.
Importing a monitor
The Import Monitor Object (IMPMONOBJ ) command enables you to import one or
more monitor objects and their associated command information. Monitors can be
imported directly from another MIMIX Monitor product library on the same system or
from a holding file that contains the exported monitor.
Use this command from the MIMIX Monitor product library on the system to which you
are importing the monitors.
Do the following to import a monitor:
1. From a command line within MIMIX Monitor, type IMPMONOBJ and press Enter.
2. The Import Monitor Object (IMPMONOBJ ) display appears. Do the following:
a. At the From monitor definition prompt, specify the name of the monitor to be
imported. Or, specify a generic name or *ALL to import multiple monitors.
Other operations available from a 5250 emulator
55
b. At the Monitor prompt, specify the name of the monitor. The default value
*NAME indicates that the name of the imported monitor is used. The name is
added to the list of monitors for this installation of MIMIX Monitor. This
parameter is ignored when a generic name or *ALL is specified for the From
monitor definition prompt.
c. At the From monitor object file prompt, specify the name of the file and the
library from which the monitor object will be imported. The default values *DFT
and *CURLIB import file MM1050P from the current library. The file you specify
must have the same record format as file MM1000P in the MIMIX Monitor
product library.
To import a monitor object directly from another product library that contains
MIMIX Monitor on this system, specify MM1000P and the name of the library
from which to import the monitor object.
d. At the Monitor information file prompt, specify the name of the file and library
from which the associated command information will be imported. Command
information can be associated with any monitor that has *CMD specified for its
interface exit program. The default values *DFT and *CURLIB import file
MM2050P from the current library. The file you specify must have the same
record format as file MM2000P in the MIMIX Monitor product library.
If you do not want to import the command information associated with the
monitor, specify *NONE.
To import the command information directly from another product library that
contains MIMIX Monitor on this system, specify MM2000P for the file name and
specify the name of the library.
e. At the Replace or add records prompt, specify what action to take if the monitor
object and corresponding command information already exist in the MIMIX
Monitor product library. The default value *REPLACE indicates that, if the
monitor objects or information exists, the existing monitor object and command
information in the files will be replaced. The value *ADD indicates the monitor
object and command information are added to the files only if they do not
already exist.
3. Press Enter to import the monitor.
Note: When a monitor is imported, MIMIX Monitor checks for the existence of the
interface exit program. If the interface exit program exists, MIMIX Monitor
calls the program. If the interface exit program does not exist, the import
completes and a warning message is sent.
Before any options on the Work with Monitors display can be used, the
imported monitor must specify a valid value for the interface exit program.
Either the interface exit program must exist or the imported monitor must
be changed to call a valid interface exit program or to *NONE.
Working with monitor job logs
MIMIX Monitor automatically saves the job log of any monitor job that ends
abnormally. A separate job log is used for each monitor that ends abnormally. Each of
the following has a separate job log: master monitor, interval master monitor, each
56
synchronous journal monitor, interval monitor, message queue monitor, and time
monitor. Also, each asynchronous job for journal monitors, interval monitors, message
queue monitors, and group monitors have separate job logs.
J ob logs are not automatically saved for monitors that end normally when end is
requested by a user action or by a return code from the event program. If you want to
save job logs, including asynchronous jobs, regardless of the ending status, you must
change the job description for MIMIX Monitor.
To see the list of job logs, type the command WRKSPLF MIMIXOWN and press Enter.
To change the job description for MIMIX Monitor, do the following:
1. Type the command CHGJOBD JOBD(MIMIXQGPL/MIMIXMON) and press F4
(Prompt).
2. Specify the values for the message logging parameter as LOG(4 00 *SECLVL)
and press Enter.
Common parameters on the CRTMONOBJ command
57
CHAPTER 4 Creating user-defined monitors
This section describes how to create monitor objects for user-defined monitors.
Monitor objects can be created only from a 5250 emulator.
Common parameters on the CRTMONOBJ command on page 57 identifies
parameters that are common to multiple event classes of monitors.
Event classes on page 71 identifies the predefined condition for each event class
and the parameters that are used to identify the event, and provides detailed
information about each event class.
Creating monitors on page 61 provides procedures and tips for creating user-
defined monitors.
Common parameters on the CRTMONOBJ command
The following information describes parameters on the Create Monitor Object
(CRTMONOBJ ) command that apply to monitors of more than one event class.
Unless noted, these parameters can be used to define a monitor of any event class.
Monitor - The Monitor parameter specifies the name of the monitor definition. Each
name in the list of monitors for an installation must be unique.
Note: The name UPSMON, and monitor names that begin with the characters MM,
are reserved names.
Event class - The event class parameter specifies the event class type for the
monitor. The event class identifies the type of event that triggers the monitor. For
detailed information, see Event classes on page 71.
Monitor group - The Monitor group parameter specifies a group to which the monitor
belongs. The default value *DFT indicates that the monitor belongs to the default
group of monitors. This parameter can be used in two ways when you specify a name:
To create a logical grouping of similar monitors so that you can subset the list of
monitors that appears on the Work with Monitors display. For example, you may
want to place all monitors that perform security checking activities into the same
group.
To create a group of monitors that participate in the event triggering of a monitor of
event class *GROUP (a group monitor).
If the name you specify for the Monitor group parameter is in use as the name of an
existing group monitor, or if a group monitor is created with the name you specify, the
monitor automatically becomes part of the triggering criteria for the group monitor.
Note: When you define a group monitor, the value of the Monitor group parameter
must be either *DFT or the same name as the monitor. If *DFT is used, the
value will be changed to the name of the monitor when the monitor definition
record is created.
Creating user-defined monitors
58
Interface exit program - The use of the Interface exit program parameter provides
an optional way to perform additional programming associated with the monitor
object. If you specify an interface exit program, then it is called both before and after
an operation is performed on a monitor.
If you want a monitor to run a particular command as the triggered event without
having to write an exit program, specify *CMD for the Interface exit program and
*NONE for the Event program. After the monitor is created you will be prompted for
the command information on the Add Monitor Information display. The running of the
command is performed when the event is triggered.
Refer to the appropriate source for information about the required parameters of any
command that you call in this way. Online help (F1 key) is available for operating
system commands and MIMIX commands.
Condition program - The Condition program parameter specifies the name and
library of the user program that will be called when the predefined monitor conditions
are met. The condition program can be used to check additional conditions before the
event program is run. If a condition program is defined for the monitor object, it must
specify a '0' in the return code in order for the condition to be met and the event
program to be called.
Event program - The Event program parameter specifies the name and library of the
user program that is called when the predefined monitor conditions and user-defined
conditions are met. An event program is used to handle the triggered event.
Note: If no condition and event programs are defined, the triggered event does
nothing.
Job description - The Job description parameter specifies the name and library of
the job description that is used when the monitor job is submitted or when
asynchronous jobs are started for the monitor. Default values use the MIMIXOWN job
description in library MIMIXQGPL.
Retry attempts - The Retry attempts parameter specifies how many times the
predefined condition and the user-defined conditions within a condition program must
be met before the event program is called. This parameter allows the condition
program the opportunity to recover from or recheck the condition that triggered the
event.
The Retry attempts parameter can be used for interval monitors, message queue
monitors, and journal monitors that use synchronous processing. The parameter is
ignored by time monitors and group monitors.
When the value of the Retry attempts parameter is 0, the predefined condition is
checked once and the condition program is called. If the user-defined conditions in
the condition program are met, the event program is called.
When you specify a value and a condition program, if the condition in the program is
not met on a given call to the program, the retry attempts are reset. Both the
predefined condition and the user-defined conditions in the condition program must
be met the number of times specified before the event program is called. When no
condition program is specified, only the predefined condition is checked the number
of times specified before the event program is called.
Common parameters on the CRTMONOBJ command
59
If you specify a value when no event program is specified, the parameter has no
meaning and the monitor will run until it is manually ended.
If you specify a Process type of asynchronous, you must specify 0 for the Retry
attempts. Asynchronous processing does not allow the concept of retrying conditions.
Exercise caution when using this parameter. It may not be appropriate to set the retry
attempts to a value other than 0. For a message queue monitor the message IDs to
be monitored must arrive on the queue and the conditions in the condition program
must be met as many times as the retry value before the event program is called. This
parameter is most appropriate for an interval monitor which specifies a subclass,
where the process of an interval passing, a communications object being checked,
and the condition program checking a user-defined condition is repeated multiple
times before the event program is run.
Process type - The Process type parameter specifies the way in which journal
monitors and message queue monitors run the condition and event programs and
how interval monitors operate. The default value is *SYNC.
For journal monitors and message queue monitors that are processed synchronously,
the condition and event programs are run synchronously in the monitor. When a
received message ID or journal entry meets the monitoring criteria the condition and
event programs are run within the monitor job. The next message ID or journal entry
is not received until the condition and event programs complete.
For interval monitors processed synchronously, the interval master monitor does not
control the monitor. Instead, a separate job is started that waits for the specified time
interval and optionally checks a communications object before it runs the condition
and event programs. The interval wait time does not begin again until after the exit
programs are completed.
When you specify the value *ASYNC on a journal monitor or a message queue
monitor, the condition and event programs are run asynchronously by starting a
separate job to run them. When a received message ID or journal entry meets the
monitoring criteria, the monitor starts a separate job to run the condition and event
programs. The next message ID or journal entry is immediately received. Multiple jobs
can be running condition and event programs simultaneously.
When you specify the value *ASYNC on an interval monitor, the monitor is controlled
by the interval master monitor. When the time interval is reached, the interval master
monitor starts a separate job for the monitor to run the condition and event programs.
The next time interval is immediately processed without waiting for the exit programs
to complete. Multiple jobs can be running condition and event programs
simultaneously.
When you specify *ASYNC for an interval monitor, the monitor must have a minimum
time interval of 5 minutes (300 seconds) to reduce the number of launched jobs.
Start with master monitor - The Start with master monitor parameter specifies
whether a monitor should be started when the master monitor is started. When you
specify *YES, if the monitors status is INACTIVE or FAILED when the master monitor
is started, the monitor will be started automatically. Monitors that have a DISABLED
status are never started with the master monitor.
Creating user-defined monitors
60
ASP group - The ASP group parameter specifies the name of the auxiliary storage
pool (ASP) group that is associated with the monitor object. Valid only for journal
monitors and message queue monitors, use this parameter to specify the name of the
ASP group where the journal or message queue library exists.
Description - Use the Description parameter to provide a description of the monitor
that will appear in the Monitors window in MIMIX Availability Manager and the Work
with Monitors display in a 5250 emulator.
Creating monitors
61
Creating monitors
All user-defined monitors consist of a monitor object and optional condition, event,
and interface exit programs.
Note: Although each type of program is optional, your monitor must have either a
condition or an event program before the monitor can be started. If your
monitor only uses an interface exit program, your program needs to control all
operations of the monitor, including running the monitor.
This information describes how to create a monitor for each of the event classes.
Programming for monitors on page 144 describes the programming requirements
for the condition, event, and interface exit programs.
Creating a time monitor
For information about time monitors, see Time monitors (*TIME) on page 76.
Do the following to create a time monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 1 (Create) in the Opt column next to
the blank line at the top of the list and press Enter.
3. The Create Monitor Object (CRTMONOBJ ) display appears. Do the following:
a. At the Monitor prompt, provide a unique name for the monitor.
b. At the Event class prompt, specify *TIME.
c. If you want to assign this monitor to a grouping of similar monitors, either for
participating in triggering a group monitor or for subsetting, specify a name for
the Monitor group prompt.
d. To call a program before (pre-exit) and after (post-exit) each operation
performed on a monitor, specify the program name and library for the Interface
exit program prompt. If you want to run a command when the event is
triggered, refer to the tips for Common parameters on the CRTMONOBJ
command on page 57.
e. To call a program containing user-defined conditions after the predefined
condition is met, specify the program name and library for the Condition
program prompt.
f. To call a program that initiates user-defined actions when the predefined
conditions and user-defined conditions are met, specify the program name and
library for the Event program prompt.
Note: If you want to run a command instead of an event program, specify
*NONE for the Event program prompt and specify *CMD for the Interface
exit program prompt. After the monitor is created, you will be prompted
to provide the command information.
62
g. To use a different job description to submit the monitor job and for
asynchronous jobs started for the monitor, specify the name and library for the
Job description prompt.
h. Press Enter. Additional parameters will appear on the display.
4. Do the following to specify how often and when to run the time monitor. Refer to
Tips for time monitors on page 62 if necessary.
a. At the Frequency prompt, specify how often the condition and event programs
are to be run.
b. The Scheduled date and Scheduled day prompts are mutually exclusive.
Specify a value for one of these prompts to indicate when the monitor is to run.
Specify *NONE for the prompt you do not use.
c. Specify the time of day that the monitor is to run at the Scheduled time prompt.
5. If you want time monitors in FAILED or INACTIVE state to automatically start
when the master monitor is started, specify *YES for the Start with master monitor
prompt.
6. Provide a text description of the monitor at the Description prompt and press
Enter.
7. If you specified a frequency of *MONTHLY and a value for the Scheduled date
prompt, the Relative day of month prompt appears. Press F1 (Help) to see a
description of the possible values. Specify a value and press Enter.
8. If you specified *CMD for the Interface exit program, the Add Monitor Information
(ADDMONINF) display appears. Do the following:
a. Type the command that you want to use and provide the appropriate
parameters and values.
b. Type the name of the library in which the command resides in the Library
parameter and press Enter. You can also type *DFT to use the library specified
on the Command parameter. If no library is specified on the Command
parameter, the library list is used to locate the command. If the command is
found, the library name is retained. If you specify *LIBL, the library list is used
to locate the command.
Tips for time monitors
Consider the following when you create a time monitor:
If your system or your job is configured to use J ulian date format, the monitor job
is submitted to run as if the normal date format is in use. For example, you have a
time monitor that specifies a Frequency of monthly (FRQ(*MONTHLY)) but the
system uses the J ulian date format where days of the year are sequentially
numbered rather than divided into months. The job for your time monitor is
submitted to run as if the system uses a date format that divides the year into
months.
If you specify a Frequency of monthly but a month does not contain the day
specified on the Scheduled date parameter, the job is not run that month. For
example, if SCDDATE(01/31/99) and FRQ(*MONTHLY) are specified, the job is
Creating monitors
63
submitted on the 31st day of J anuary, March, May, J uly, August, October, and
December. The job will not run in February, April, J une, September, and
November.
To submit a job on the last day of every month, specify SCDDATE(*MONTHEND).
To submit a job that runs every day, specify SCDDAY(*ALL).
If a Scheduled time has not passed, a job will run on the specified date or day of
the week according to any additional limits placed on the job by the parameters
that control frequency and relative day of the month. For example:
You specify a scheduled date of *MONTHSTR and a scheduled time of 2 a.m.
If today is the first day of the month and it is before 2 a.m., the job is submitted
today. Otherwise, the job is submitted on the first day of the next month.
If SCDDAY(*FRI) and SCDTIME(12:00:00) are specified and you are adding
this job schedule entry at 11:00 a.m. on a Friday, the job is submitted today. If
you are adding the entry at 4:00 p.m. on a Friday or at 11:00 a.m. on a Monday,
the job is submitted the following Friday.
The Relative day of month (RELDAYMON) parameter specifies the relative day of
the month on which the monitor is run. The relative day of the month is valid only
when a value is specified for the Scheduled day (SCDDAY) and the Frequency
(FRQ) is specified as *MONTHLY. For example, if you specify FRQ(*MONTHLY)
SCDDAY(*TUE) RELDAYMON(2), the job is submitted on the second Tuesday of
every month.
Creating a journal monitor
For information about journal monitors, see J ournal monitors (*J RN) on page 74.
Do the following to create a journal monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 1 (Create) in the Opt column next to
the blank line at the top of the list and press Enter.
3. The Create Monitor Object (CRTMONOBJ ) display appears. Do the following:
a. At the Monitor prompt, provide a unique name for the monitor.
b. At the Event class prompt, specify *JRN.
c. If you want to assign this monitor to a grouping of similar monitors, either for
participating in triggering a group monitor or for subsetting, specify a name for
the Monitor group prompt.
d. To call a program before (pre-exit) and after (post-exit) each operation
performed on a monitor, specify the program name and library for the Interface
exit program prompt. If you want to run a command when the event is
triggered, refer to the tips for Common parameters on the CRTMONOBJ
command on page 57.
64
e. To call a program containing user-defined conditions after the predefined
condition is met, specify the program name and library for the Condition
program prompt.
f. To call a program that initiates user-defined actions when the predefined
conditions and user-defined conditions are met, specify the program name and
library for the Event program prompt.
Note: If you want to run a command instead of an event program, specify
*NONE for the Event program prompt and specify *CMD for the Interface
exit program prompt. After the monitor is created, you will be prompted
to provide the command information.
g. To use a different job description to submit the monitor job and for
asynchronous jobs started for the monitor, specify the name and library for the
Job description prompt.
h. Press Enter, additional parameters will appear on the display.
4. If you want to retry the conditions a number of times before calling the event
program, specify a value for the Retry attempts prompt.
5. At the Journal prompt, specify the name and library of the journal from which
journal entries will be monitored.
6. At the Journal codes prompt, specify one or more journal codes to use to limit the
journal entries to be monitored on the specified journal.
7. At the Journal entry types prompt, specify one or more journal entry types to use
to limit the journal entries to be monitored on the specified journal.
8. If you want to use asynchronous processing so that the monitor starts a separate
job to process the journal entry, specify *ASYNC for the Process type prompt.
9. If you want journal monitors in FAILED or INACTIVE state to automatically start
when the master monitor is started, specify *YES for the Start with master monitor
prompt.
10. If the journal to be monitored exists in an independent ASP, at the ASP group
prompt specify the name of the primary ASP device within the ASP group.
11. The ASP group name is the name of the primary ASP device within the ASP
group.
12. Provide a text description of the monitor at the Description prompt and press
Enter.
13. If you specified *CMD for the Interface exit program, the Add Monitor Information
(ADDMONINF) display appears. Do the following:
a. Type the command that you want to use and provide the appropriate
parameters and values.
b. Type the name of the library in which the command resides in the Library
parameter and press Enter. You can also type *DFT to use the library specified
on the Command parameter. If no library is specified on the Command
parameter, the library list is used to locate the command. If the command is
Creating monitors
65
found, the library name is retained. If you specify *LIBL, the library list is used
to locate the command.
Creating a message queue monitor
For information about message queue monitors, see Message queue monitors
(*MSGQ) on page 75.
Do the following to create a message queue monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 1 (Create) in the Opt column next to
the blank line at the top of the list and press Enter.
3. The Create Monitor Object (CRTMONOBJ ) display appears. Do the following:
a. At the Monitor prompt, provide a unique name for the monitor.
b. At the Event class prompt, specify *MSGQ.
c. If you want to assign this monitor to a grouping of similar monitors, either for
participating in triggering a group monitor or for subsetting, specify a name for
the Monitor group prompt.
d. To call a program before (pre-exit) and after (post-exit) each operation
performed on a monitor, specify the program name and library for the Interface
exit program prompt. If you want to run a command when the event is
triggered, refer to the tips for Common parameters on the CRTMONOBJ
command on page 57.
e. To call a program containing user-defined conditions after the predefined
condition is met, specify the program name and library for the Condition
program prompt.
f. To call a program that initiates user-defined actions when the predefined
conditions and user-defined conditions are met, specify the program name and
library for the Event program prompt.
Note: If you want to run a command instead of an event program, specify
*NONE for the Event program prompt and specify *CMD for the Interface
exit program prompt. After the monitor is created, you will be prompted
to provide the command information.
g. To use a different job description to submit the monitor job and for
asynchronous jobs started for the monitor, specify the name and library for the
Job description prompt.
h. Press Enter, additional parameters will appear on the display.
4. If you want to retry the conditions a number of times before calling the event
program, specify a value for the Retry attempts prompt.
5. At the Message queue prompt, specify the name and library of the message
queue to be monitored.
6. At the Message identifier prompt, specify one or more message identifiers,
66
including generics, to monitor for on the specified message queue.
7. If you want to use asynchronous processing so that the monitor starts a separate
job to process the message identifier, specify *ASYNC for the Process type
prompt.
8. If you want message queue monitors in FAILED or INACTIVE state to
automatically start when the master monitor is started, specify *YES for the Start
with master monitor prompt.
9. If the message queue to be monitored exists in an independent ASP, at the ASP
group prompt specify the name of the primary ASP device within the ASP group.
10. Provide a text description of the monitor at the Description prompt and press
Enter.
11. If you specified *CMD for the Interface exit program, the Add Monitor Information
(ADDMONINF) display appears. Do the following:
a. Type the command that you want to use and provide the appropriate
parameters and values.
b. Type the name of the library in which the command resides in the Library
parameter and press Enter. You can also type *DFT to use the library specified
on the Command parameter. If no library is specified on the Command
parameter, the library list is used to locate the command. If the command is
found, the library name is retained. If you specify *LIBL, the library list is used
to locate the command.
Creating an interval monitor
For information about interval monitors, see Interval monitors (*INTERVAL) on
page 72.
Do the following to create an interval monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 1 (Create) in the Opt column next to
the blank line at the top of the list and press Enter.
3. The Create Monitor Object (CRTMONOBJ ) display appears. Do the following:
a. At the Monitor prompt, provide a unique name for the monitor.
b. At the Event class prompt, specify *INTERVAL.
c. If you want to assign this monitor to a grouping of similar monitors, either for
participating in triggering a group monitor or for subsetting, specify a name for
the Monitor group prompt.
d. To call a program before (pre-exit) and after (post-exit) each operation
performed on a monitor, specify the program name and library for the Interface
exit program prompt. If you want to run a command when the event is
triggered, refer to the tips for Common parameters on the CRTMONOBJ
command on page 57.
Creating monitors
67
e. To call a program containing user-defined conditions after the predefined
condition is met, specify the program name and library for the Condition
program prompt.
f. To call a program that initiates user-defined actions when the predefined
conditions and user-defined conditions are met, specify the program name and
library for the Event program prompt.
Note: If you want to run a command instead of an event program, specify
*NONE for the Event program prompt and specify *CMD for the Interface
exit program prompt. After the monitor is created, you will be prompted
to provide the command information.
g. To use a different job description to submit the monitor job and for
asynchronous jobs started for the monitor, specify the name and library for the
Job description prompt.
h. Press Enter, additional parameters will appear on the display.
4. If you want to retry the conditions a number of times before calling the event
program, specify a value for the Retry attempts prompt.
5. At the Time interval (sec.) prompt, specify the length of time, in seconds, that
MIMIX Monitor waits before optionally checking the communications object and, if
the object is not active, starting the condition and event programs for the monitor
again. The value specified must be equal to or greater than 300 if the Process
type specified was *ASYNC.
6. Depending on what items you want the monitor to check you will need to select
the following parameters:
Table 3. Interval monitor parameter selections
Desired action Interval subclass prompt choice
If you do not need to
have the monitor check
additional parameters:
1. Specify *NONE for the Interval subclass prompt and press
Enter
2. Proceed to Step 7.
If you want to have the
monitor check the status
of a configuration
object:
1. Specify *CFG for the Interval subclass prompt and press
Enter.
2. At the Configuration object prompt, specify the name of the
object to monitor.
3. At the Configuration type prompt, specify the type of the line,
controller, or device to monitor and proceed to Step 7.
If you want to check the
status of a TCP/IP host
address or alias:
1. Specify *TCP for the Interval subclass prompt and press
Enter.
2. At the Host address or alias prompt, specify the TCP host
address or alias to monitor. (Ensure that you place single
quotes around the host address) and proceed to Step 7.
68
7. If you want to use asynchronous processing so that the interval master monitor
controls the intervals and starts a separate job to run the condition and event
programs, specify *ASYNC for the Process type prompt.
8. If you want interval monitors in FAILED or INACTIVE state to automatically start
when the master monitor is started, specify *YES for the Start with master monitor
prompt.
9. Provide a text description of the monitor at the Description prompt and press
Enter.
10. If you specified *CMD for the Interface exit program, the Add Monitor Information
(ADDMONINF) display appears. Do the following:
a. Type the command that you want to use and provide the appropriate
parameters and values.
b. Type the name of the library in which the command resides in the Library
parameter and press Enter. You can also type *DFT to use the library specified
on the Command parameter. If no library is specified on the Command
parameter, the library list is used to locate the command. If the command is
found, the library name is retained. If you specify *LIBL, the library list is used
to locate the command.
Creating a group monitor
For information about group monitors, see Group monitors (*GROUP) on page 77.
If you are creating a group monitor for use in a switching scenario that requires a
switch definition, ensure that you create the switch definition first. The switch
definition automatically creates a group monitor of the same name.
Note: If you are using MIMIX Model Switch Framework, the Create Switch
Framework (CRTSWTFWK) command will automatically create a group
If you want to check a
communications link
using the primary
transfer definition
specified in a system
definition used in a
replication environment:
1. Specify *SYSDFN for the Interval subclass prompt and press
Enter.
2. At the System definition prompt, specify a system definition
that is defined to MIMIX. Press F4 (Prompt) to see a list of
system definitions and then proceed to Step 7.
If you want to check a
communications link
using a transfer
definition used in a
replication environment:
1. Specify *TFRDFN for the Interval subclass prompt and press
Enter.
2. At the Transfer definition prompt, specify the three-part name
of the transfer definition that is defined to MIMIX and which
defines the communications method to be monitored. All
three parts of the transfer definition must be specified. Press
F4 (Prompt) to see a list of transfer definitions and then
proceed to Step 7.
Table 3. Interval monitor parameter selections
Desired action Interval subclass prompt choice
Creating monitors
69
monitor. For more information refer to the CRTSWTFWK command
description in MIMIX Model Switch Framework commands on page 105.
Do the following to create a group monitor:
1. From the MIMIX Basic Main Menu, select option 12 (Work with monitors) and
press Enter.
2. From the Work with Monitors display, type a 1 (Create) in the Opt column next to
the blank line at the top of the list and press Enter.
3. The Create Monitor Object (CRTMONOBJ ) display appears. Do the following:
a. At the Monitor prompt, provide a unique name for the monitor.
b. At the Event class prompt, specify *GROUP.
c. Specify *DFT at the Monitor group prompt.
d. To call a program before (pre-exit) and after (post-exit) each operation
performed on a monitor, specify the program name and library for the Interface
exit program prompt. If you want to run a command when the event is
triggered, refer to the tips for Common parameters on the CRTMONOBJ
command on page 57.
e. To call a program containing user-defined conditions after the predefined
condition is met, specify the program name and library for the Condition
program prompt.
f. To call a program that initiates user-defined actions when the predefined
conditions and user-defined conditions are met, specify the program name and
library for the Event program prompt.
Note: If you want to run a command instead of an event program, specify
*NONE for the Event program prompt and specify *CMD for the Interface
exit program prompt. After the monitor is created, you will be prompted
to provide the command information.
g. To use a different job description to submit the monitor job and for
asynchronous jobs started for the monitor, specify the name and library for the
Job description prompt.
h. Press Enter.
4. If you want group monitors in FAILED or INACTIVE state to automatically start
when the master monitor is started, specify *YES for the Start with master monitor
prompt.
5. Provide a text description of the monitor at the Description prompt and press
Enter.
6. If you specified *CMD for the Interface exit program, the Add Monitor Information
(ADDMONINF) display appears. Do the following:
a. Type the command that you want to use and provide the appropriate
parameters and values.
b. Type the name of the library in which the command resides in the Library
parameter and press Enter. You can also type *DFT to use the library specified
70
on the Command parameter. If no library is specified on the Command
parameter, the library list is used to locate the command. If the command is
found, the library name is retained. If you specify *LIBL, the library list is used
to locate the command.
Event classes
71
Event classes
MIMIX Monitor supports monitor objects based on the following event classes:
*INTERVAL, *J RN, *EXDJ RN, *MSGQ, *TIME, *GROUP, and *PREDFN.
In user defined monitors, you can use any event class except *PREDFN or *EXDJ RN
to define the activity that calls programs associated with the monitor.
Predefined conditions for event classes and their associated parameters
The predefined conditions for each event class are:
*INTERVAL - The specified time interval has passed, and optional subclass checking
has been performed.
*TIME - The specified date and time has occurred.
*MSGQ - A specified message ID has arrived in the monitored message queue.
*J RN - A specified journal transaction has arrived in the monitored journal.
*GROUP - The predefined condition for a group monitor is that all monitors in the
group, with the exception of DISABLED and INACTIVE monitors, have changed to a
FAILED or FAILED/ACT status. When the last active monitor in the group (other than
the group monitor itself) changes to a status of INACTIVE, FAILED, or FAILED/ACT
the group monitor assesses whether to run the condition and event programs
specified for the group monitor.
Table 4 identifies which parameters on the CRTMONOBJ command are used to
define the event for each event class. The *GROUP event class is not shown
because it does not require parameters to define the event.
Table 4. Parameters on CRTMONOBJ command that define the predefined condition for
the specified event class
Parameters Event Classes
*INTERVAL *TIME *MSGQ *JRN
Time interval (sec.) X
Interval subclass X
Configuration object X
Configuration type X
Host address or alias X
System definition X
Transfer definition X
Frequency X
Scheduled date X
Scheduled day X
72
Interval monitors (*INTERVAL)
Interval monitors use an interval (in seconds) to determine how often to run condition
and event programs. Interval monitors are different from time monitors because
interval monitors are based on a number of seconds passing, not on time of day.
Subclasses - Interval monitors support the concept of subclasses to check that the
communications link or object being monitored is active. When a subclass is specified
on an interval monitor, additional predefined conditions are checked after the time
specified in the interval has passed. You can specify retry attempts so that the monitor
will retry the communications link or object, attempt recovery where possible, and call
the condition program multiple times before the event program is called.
The following subclasses are supported:
Configuration object - for the configuration object subclass (*CFG), the status of a
line, controller, or device object is checked after the time specified in the interval is
past. If the object is not active, the monitor attempts recovery if the value of retry
attempts parameter is other than zero. If the object can be recovered on a retry
attempt, the condition and event programs are not called and the monitor
continues to monitor the object. If the object cannot be recovered on a retry
attempt, the condition program is called. If the object is not recovered after the
specified number of retry attempts, the event program is called.
TCP/IP interface - for the TCP/IP subclass (*TCP), the status of a host address or
alias is checked after the time specified in the interval is past. If there is no
response, the condition and event programs are triggered. When a value other
than zero is specified for the retry attempts parameter, the monitor will check the
status of the host address or alias and call the condition program multiple times
before the event program is called. No recovery is attempted.
System definition - a system definition contains a transfer definition, so when you
specify a system definition, the communication link defined by the transfer
definition is verified. The subclass of system definition (*SYSDFN) interacts with
system definitions and transfer definitions used in MIMIX replication
Scheduled time X
Relative day of month X
Message queue X
Message identifier X
J ournal X
J ournal codes X
J ournal entry types X
Table 4. Parameters on CRTMONOBJ command that define the predefined condition for
the specified event class
Parameters Event Classes
*INTERVAL *TIME *MSGQ *JRN
Event classes
73
configurations. For information on configuring a system definition, refer to the
MIMIX Administrator Reference book.
Transfer definition - a transfer definition defines a communications link that can be
used to determine if the two systems that define the link are able to communicate.
The subclasses of transfer definition (*TFRDFN) interact with transfer definitions
used in MIMIX replication configurations. For information on configuring a transfer
definition, refer to the MIMIX Administrator Reference book.
For *SYSDFN and *TFRDFN subclasses of an interval monitor, the communications
link is verified when the time interval has passed. If the communications link is not
responding, the condition and event programs are run. When a value other than zero
is specified for the retry attempts parameter, the monitor will check the
communications link and call the condition program multiple times before the event
program is called. No recovery is attempted on the communications link.
Process type - Interval monitors also support the concept of asynchronous and
synchronous processing. You choose what is used by the value you specify for the
Process type (PRCTYPE) parameter. The interval master monitor controls all
asynchronous interval monitors. Asynchronous interval monitors are monitors that,
each time an interval passes, use a separate process to run the condition and event
programs. The interval for an asynchronous interval monitor begins when the interval
master monitor is started, or if the interval master monitor is already active, when the
interval master monitor handles the start request. For example, a monitor with a 300
second interval defined will cause the interval master monitor to start a separate
process to run the condition and event programs after 300 seconds and every 300
seconds thereafter. (300 seconds is the smallest valid value for an asynchronous
interval.) Several processes can be simultaneously running for the same monitor if
the interval time is reached before the first separate process has completed running
the condition and event programs. The running of the event program is dependent on
the success of the condition program. The Retry attempts parameter is not allowed
when asynchronous processing is used.
Synchronous interval monitors run as a separate process where the condition and
event programs are called in-line after the interval has passed. The next time interval
does not begin until the condition and event programs have completed. With
synchronous interval monitors, the concept of retry attempts requires that the
predefined conditions, the passing of the time interval, the sub-class checking, and
user-defined conditions (the condition program) must be met multiple times before the
event program is called.
When to use an interval monitor
You can use an interval monitor when you want to:
Check for a condition at regularly timed intervals that can be expressed in
seconds or if you need to check communications objects or links. Interval
monitors are activated after the specified time interval has passed. Interval
monitors should be used when the conditions being monitored should be checked
on a regular basis and not at a specific time.
For example, you may have a monitor that checks to see when the DASD
threshold exceeds a certain percentage. You may want to create an event
74
program that clears certain output queues or runs a command to reclaim spool
storage. To determine if the threshold value is exceeded, you could set this
monitor to run at regular intervals.
Monitor communications links and objects. If you specify a line, controller, or
device to monitor, you can have the monitor attempt recovery on a failed object.
You can also use interval monitors in your network to monitor communications
links to determine if a system in the network has failed.
Watch communications lines for failures and have an event program that attempts
to reestablish communications.
Journal monitors (*JRN)
You can use journal monitors to define journal, journal codes, and journal entry types
to monitor. There is a separate monitor job for each monitor object definition of this
event class.
You determine which entries the journal monitor receives from a journal receiver by
specifying journal codes and journal entry types. The journal monitor starts at a
specified entry in the currently attached journal receiver. The journal monitor receives
and processes only the entries that meet your filtering criteria of specified journal
codes and journal entry types. When the monitor receives an entry, the condition
program runs. The condition program determines if the event program will run.
J ournal monitors have a process type parameter that determines whether entries that
meet the selection criteria are processed synchronously or asynchronously. In
synchronous processing, the monitor calls the condition and event programs and the
next journal transaction is not received until the event program completes. In
asynchronous processing, a separate job is started to process the message, call the
condition and event programs, and update the status of the monitor upon completion.
Asynchronous processing allows the monitor to immediately process the next entry
without waiting for processing of the previous entry to complete.
A synchronous journal monitor can also specify a retry attempt value. When a retry
value is specified, multiple journal entries must meet the monitoring criteria and the
condition program will be called each time before the event program is called.
A journal monitor writes an entry to the journal being monitored when the following
situation occurs. If you specify the parameter FROMENT2(*LASTPROC) when you
start a journal monitor, the monitor starts checking entries at the last sequence
number processed. If no additional entries were written to the journal since the
monitor processed the last entry, the monitor writes entry U MX to the journal.
Note: The parameter Starting sequence number (FROMENT) can be used when the
journal supports *MAXOPT2 for the receiver size and when sequence number
values do not exceed 10 digits. However, FROMENT2 is recommended.
When to use a journal monitor
You can use journal monitors when you need to watch a journal for certain journal
codes and entry types as they occur. You can monitor a journal for any activity that is
important in your operating environment.
Event classes
75
For example, you may want to define a monitor to watch a journal for F-EJ entries for
a member within a file. These types of entries may indicate a problem such as
journaling ended for file XYZ. Files indicated by these entries may no longer have
adequate backup and recovery protection. Your event program could alert an operator
or build a list of files, which is used by a program that attempts to resolve the problem.
In another example, you may want a monitor to watch for J -PR entries that indicate
the start of a new journal receiver or for other journal codes associated with changing
receivers. As journal receivers change you could have an event program that saves
the journal receiver to tape. You might want an event program that checks if there are
an unusually high number of receivers associated with the journal because that could
indicate problems with your journal maintenance process.
Or, you may want to create a security monitor that reads the Security Audit J ournal
and watches for authority failure entries and notifies an operator when these entries
occur.
Extended journal monitors (*EXDJRN)
Extended journal monitors (*EXDJ RN) are journal monitors shipped with MIMIX that
perform a specific purpose in a MIMIX environment. You cannot change these
monitors. This event class is not an available choice when you create a monitor.
Message queue monitors (*MSGQ)
You can use message queue monitors (*MSGQ) to define a message queue and a
list of message identifiers (including generic values) for which to monitor. There is a
separate monitor job for each monitor object definition of this event class. When a
message arrives on the message queue, it is compared to the list of monitored
message IDs. If the monitor receives a message ID that appears in the list then the
condition program runs. If the conditions are met, the event program runs. Message
IDs that arrive on the queue before the message queue monitor is started are ignored.
Only messages that arrive on the message queue while the monitor is active are
processed.
Message queue monitors have a process type parameter that determines whether
message IDs that meet the selection criteria are processed synchronously or
asynchronously. In synchronous processing, condition and event programs are called
by the message queue monitor and must complete before the next message on the
queue is received. In asynchronous processing, a separate job is started to process
the message, call the condition and event programs, and update the status of the
monitor upon completion. Asynchronous processing allows the monitor to
immediately process the next message in the queue without waiting for processing of
the previous message to complete.
A synchronous message queue monitor can also specify a retry attempt value. When
a retry value is specified, multiple messages must arrive that meet the monitoring
criteria and the condition program will be called each time before the event program is
called.
You should ensure that no other processes, including another message queue
monitor, receive messages from the monitored message queue. Also, you should not
use the Clear Message Queue (CLRMSGQ) command while a monitor is processing
76
messages from a message queue. Message queue monitors use the message key to
identify the last message that was processed from the monitored queue and thereby
determine the next message to receive. When certain commands are used on a
message whose key is being processed by the message queue monitor, the message
key can become not valid. These commands are the CLRMSGQ command and the
Receive Message (RCVMSG) command when RMV(*YES) is specified. If a new
message arrives in the queue that fits into the same space as the removed message,
the new message may be assigned the same key. If this situation occurs before
MIMIX Monitor resets the key that is not valid, the message queue monitor may omit
unprocessed messages and resume processing at the wrong location. However, if the
monitor determines that the key has become not valid the primary and secondary
message queues and the message log are notified. The message queue monitor will
receive the last message on the queue, as it does when the monitor is first started,
and resume receiving messages from that point.
For more information see Working with the message log on page 49.
When to use a message queue monitor
You should use a message queue monitor when you need to watch a message queue
for the occurrence of certain message IDs. Message queue monitors are appropriate
for situations where a process or an application sends messages to a specific
message queue.
For example, you may want to monitor the primary message queue used by MIMIX for
messages indicating that a file has been placed on hold and notify the system
operator when this occurs. Or, you may want to monitor the system operator message
queue for messages indicating user profiles that have been disabled because the
number of invalid sign-on attempts has been exceeded. You could have an event
program send a break message to the operator, or automatically reset the user
profiles, or run an additional security program.
Additionally you could have a monitor watch for certain messages in the system
operator message queue and automatically recycle controllers.
Time monitors (*TIME)
Time monitors (*TIME) use the IBM i job scheduler to determine when to run condition
and event programs. You can set the monitor object definition to run a job once or at
regular intervals, based on the date and time of day. The master monitor controls all
monitor object definitions for time monitors. The master monitor adds a job schedule
entry for each time monitor and periodically verifies that the job is properly scheduled.
The job name is the same as the monitor name. If the monitor object definition is
ended the job schedule entry is removed. When the scheduled date and time occur,
the condition program runs. If the conditions are met, the event program runs. For
more information see Master monitor on page 21.
When to use a time monitor
You should use a time monitor when you need to check for a condition or take an
action based on a date or a day and time. Time monitors allow you to specify a time
and a frequency in which to run the monitor (once, weekly, or monthly) and then
Event classes
77
specify a scheduled date or day of the week. The scheduled date and day parameters
are mutually exclusive. You can optionally schedule the relative day of the month (for
example, the last day of a month or the second Tuesday of each month).
For example, you may want to define a monitor to run a usage report on the last day
of each week or to print backup logs from a nightly backup.
Group monitors (*GROUP)
When you create a group monitor, you will also need to create multiple monitors to
participate in a group decision. The association between the group monitor and the
participating monitors is formed when the name of the group monitor (which has an
event class of *GROUP) is specified as the value of the Monitor group (MONGRP)
parameter in the participating monitors. The participating monitors trigger when the
group monitors condition and event programs are run.
When the group monitor is started, all participating monitors with a status of
INACTIVE or FAILED are started.
Monitors with a DISABLED status are not started when the group monitor is started
and do not participate in decisions for the group monitor (DISABLED status is
considered inactive). However, DISABLED monitors can still be started individually.
Once started, their status changes and the monitors will then participate in the
triggering decision for the group.
If the group monitor is active, it checks the status of all participating monitors
whenever the status of a participating active monitor changes. The group monitor
remains active and does not consider running its programs until after the last of its
participating active monitors either ends or fails. For more information see Group
monitor processing on page 25.
When to use a group monitor
You can use group monitors when you want multiple monitors to participate in a
decision or when you want to coordinate activity among multiple monitors. One use of
a group monitor is in a switching scenario. You can define several monitors to watch
communications links or objects on your production system. At any moment, if all
participating communications monitors (a sub-class of an interval monitor) agree that
the system is not active, the group monitor is triggered. The event program for the
group monitor can be programmed to use the built-in switching capabilities of MIMIX
to switch users to a backup system and switch the direction of replication. A sample
event program MSFEVENT is shipped with this product and is in file MMTEMPLSRC
in the product library.
Predefined monitors (*PREDFN)
Predefined monitors (*PREDFN) are a special event class that identifies monitors that
are shipped with the MIMIX Monitor product and do not fit into any other event class.
Predefined monitors cannot be created or changed by users.
Predefined monitors may include:
Additional interfaces for specific functions
78
Specialized commands that allow for a limited degree of customizing
Enabling for exit programs that include user-defined programming
This event class is not an available choice when you create a monitor.
79
CHAPTER 5 Working with switch definitions
This section provides procedures for creating and working with switch definitions.
Switch definitions require the use of system definitions and transfer definitions
configured in the same MIMIX installation. Refer to Preparing for a switch on
page 31 for additional information about using switch definitions.
You may also want to consider using the MIMIX Model Switch Framework in your
switching environment. See Using the MIMIX Model Switch Framework on
page 100.
80
Accessing the Work with Switch Definitions display
The Work with Switch Definitions display enables you to work with all of your switch
definitions from one interface. You can also access displays to work with devices
defined to a switch definition and the monitors associated with a switch definition.
To access the Work with Switch Definitions display, do one of the following:
From the MIMIX Basic Main Menu, select option 11 (Configuration menu) and
press Enter. Then, from the MIMIX Configuration Menu, select option 10 (Work
with switches) and press Enter.
Using the name of the library in which MIMIX Monitor is installed for library-name,
type library-name/WRKSWT and press Enter.
Creating switch definitions
81
Creating switch definitions
When you create a switch definition, a group monitor (event class *GROUP) is
automatically created with the same name and specifying the same event program as
the switch definition.
Switch definitions use system definitions and transfer definitions to define the systems
to be switched and the communications protocol used between the systems. The
system definitions and transfer definitions must be configured in the MIMIX
installation library before they as specified in a switch definition.
You can create switch definitions using three different types of switching control. The
following subtopics are customized for each type of switching control.
Note: The MIMIX Model Switch Framework does not need a switch definition. If you
are using the Create Switch Framework (CRTSWTFWK) command in the
MIMIX Model Switch Framework, you can specify SWTDFN(*NONE) on this
command. However, without a switch definition and monitors to trigger the
switch, automated unplanned switching will not take place.
Creating a switch definition for TCP
Do the following to create a switch definition that uses IP impersonation:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 1 (Create) in the Opt column
next to the blank line at the top of the list and press Enter.
3. The Create Switch Definition (CRTSWTDFN) display appears. Do the following:
a. Specify a unique name for the definition at the Switch prompt. Once the switch
definition is created, its name cannot be changed.
b. At the Switch type prompt, specify *TCP.
c. At the Production system definition prompt, specify the name of a system
definition defined to MIMIX that is the production system during normal
operations. To see a list of system definitions available in this product library,
press F4 (Prompt).
d. At the Backup system definition prompt, specify the name of a system
definition defined to MIMIX that is the backup system during normal
operations. The default value *LOCAL uses the system definition for this
system. To see a list of system definitions available in this product library, press
F4 (Prompt).
e. At the Transfer definition prompt, specify the name of the transfer definition that
defines the communication method between the production system and the
backup system. You should specify the controlling system if it is not the backup
system. To see a list of system definitions available in this product library, press
F4 (Prompt).
f. At the Event program prompt, specify the name and library of the user program
that is called by the group monitor when the predefined monitor conditions and
82
user-defined conditions are met. An event program is used to handle the
triggered event.
Note: If you want to specify a condition program, you must change the group
monitor that is automatically created when the switch definition is
created.
4. Press Enter. Additional parameters appear on the display.
5. At the Impersonation alias or address prompt, specify the name of a host alias or
an address to be used for IP impersonation.
6. At the Logon message prompt, you can accept the default message or provide the
text that you want to appear on devices defined to the switch when the Start
Switch Screen (STRSWTSCN) command is used during a switching operation.
7. At the Description prompt, provide a text description of the switch definition and
press Enter.
Creating a switch definition for hardware switching
Do the following to create a switch definition that uses switching hardware from Black
Box Corporation:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 1 (Create) in the Opt column
next to the blank line at the top of the list and press Enter.
3. The Create Switch Definition (CRTSWTDFN) display appears. Do the following:
a. Specify a unique name for the definition at the Switch prompt. Once the switch
definition is created, its name cannot be changed.
b. At the Switch type prompt, specify *SM900A.
c. At the Production system definition prompt, specify the name of a system
definition defined to MIMIX that is the production system during normal
operations. To see a list of system definitions available in this product library,
press F4 (Prompt).
d. At the Backup system definition prompt, specify the name of a system
definition defined to MIMIX that is the backup system during normal
operations. The default value *LOCAL uses the system definition for this
system. To see a list of system definitions available in this product library, press
F4 (Prompt).
e. At the Transfer definition prompt, if the system controlling the switch operations
is not the backup system, specify the name of a transfer definition that defines
the communication between the production system and the backup system.
f. At the Event program prompt, specify the name and library of the user program
that is called by the group monitor when the predefined monitor conditions and
user-defined conditions are met. An event program is used to handle the
triggered event.
Note: If you want to specify a condition program, you must change the group
Creating switch definitions
83
monitor that is automatically created when the switch definition is
created.
4. Press Enter. Additional parameters appear on the display.
5. At the Production system switch code prompt, verify that the value shown
represents the hardware switch setting necessary to have devices attached to the
production system. If necessary, change the value.
6. At the Gang switch control device prompt, specify the name of the communication
object to the switching hardware. (This was created with the CRTDEVASC
command.)
7. At the Device remote location name prompt, specify the remote location name to
use for communications to the switching hardware. (This is the used for the
CRTDEVASC command).
8. At the Security character prompt, specify the value that matches the dip switch
settings in the remote system gang controller. The security character is required
for all communications with the switching hardware.
9. At the Dial sequence prompt, verify that the default value *LOCAL matches your
switching hardware configuration. If you are using a remote configuration, specify
*AUTODIAL or a dial sequence.
10. At the Logon message prompt, you can accept the default message or provide the
text that you want to appear on devices defined to the switch when the Start
Switch Screen (STRSWTSCN) command is used during a switching operation.
11. At the Description prompt, provide a text description of the switch definition and
press Enter.
Creating a switch definition for type *NONE
Use this procedure if you want to program the IP impersonation or hardware switching
yourself. When you use this procedure, the switch definition you create will not
include the information MIMIX Monitor requires to perform a hardware switch or
perform IP impersonation. If you want to use those functions with a switch definition
created in this way, your event program must include all of the necessary
programming.
If the Set Switch Source (SETSWTSRC) command is used on a switch definition
created with this procedure, no switching occurs. The event program associated
with the switch definition can be run without starting the associated group monitor.
One reason why you might want to create a switch definition in this way is to
associate device entries with a switch definition so that you can send a message to
the devices using the Start Switch Screen (STRSWTSCN) command.
Do the following to create a switch definition where MIMIX Monitor does not perform
switching:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 1 (Create) in the Opt column
next to the blank line at the top of the list and press Enter.
84
3. The Create Switch Definition (CRTSWTDFN) display appears. Do the following:
a. Specify a unique name for the definition at the Switch prompt. Once the switch
definition is created, its name cannot be changed.
b. At the Switch type prompt, specify *NONE.
c. Verify that the value of the Production system definition prompt is what you
want. The default value *NONE indicates that MMIX Monitor will not verify the
status of the production system.
d. At the Backup system definition prompt, specify the name of a system
definition defined to MIMIX that is the backup system during normal
operations. The default value *LOCAL uses the system definition for this
system. To see a list of system definitions available in this product library, press
F4 (Prompt).
e. At the Transfer definition prompt, if the system controlling the switch operations
is not the backup system, specify the name of a transfer definition that defines
the communication between the production system and the backup system.
f. At the Event program prompt, specify the name and library of the user program
that is called by the group monitor when the predefined monitor conditions and
user-defined conditions are met. An event program is used to handle the
triggered event.
Note: If you want to specify a condition program, you must change the group
monitor that is automatically created when the switch definition is
created.
4. Press Enter. Additional parameters appear on the display.
5. At the Logon message prompt, you can accept the default message or provide the
text that you want to appear on devices defined to the switch when the Start
Switch Screen (STRSWTSCN) command is used during a switching operation.
6. At the Description prompt, provide a text description of the switch definition and
press Enter.
Changing a switch definition
85
Changing a switch definition
To change a switch definition, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 2 (Change) next to the
switch definition you want and press Enter.
3. The Change Switch Definition (CHGSWTDFN) display appears. Press Enter to
see all parameters for this switch type.
4. Make the changes you need. If you change the value of the Switch type, press
Enter to see the additional parameters associated with the new type.
Note: You cannot change the name of an existing switch definition.
5. To accept the changes, press Enter.
86
Deleting a switch definition
This procedure will delete the group monitor associated with the switch definition.
To delete a switch definition, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, verify that the value of the Status
column for the switch definition you want to delete is not ACTIVE.
3. Type a 4 (Delete) next to the switch definition you want and press Enter.
4. The Confirm Delete of Switches display appears. Verify that the switch definition
on the display is the one you want to delete and press Enter.
Displaying a switch definition
87
Displaying a switch definition
To display a switch definition, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 5 (Display) next to the
switch definition you want and press Enter.
3. The Display Switch Definition display appears showing the values for the specified
switch definition.
88
Printing a switch definition
To print a switch definition, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 6 (Print) next to the switch
definition you want and press Enter.
3. A spooled file is created that contains the switch definition. Use your local process
to print your spooled files.
Working with monitors for a switch definition
89
Working with monitors for a switch definition
You can access the monitors associated with a switch definition from either of the
following displays:
Work with Monitors display - All monitors associated with a switch definition are
listed on this display along with other monitors. If you know the name of the group
monitor associated with the switch definition, you can start or end the monitor from
this display. For more information, see Displaying a list of monitors on a system
on page 39.
Work with Switch Definitions display - Option 12 (Work with monitors) from this
display will access the Work with Monitors display, subsetted to show only the
group monitor associated with the selected switch definition and any other
monitors that participate in the group decision. For more information, see
Accessing the Work with Switch Definitions display on page 80.
Starting monitors for a switch definition
This procedure starts the group monitor for the switch definition and extends the
request to any other monitors that participate in the group decision that have a status
that allows them to be started. The status of a monitor may prevent it from
participating in the start request. Additionally, the group monitor must have a condition
or event program associated with it or it will not start. For information about what
monitor status values are required for a start request, see Table 1 in topic Actions
available for monitors on page 39.
Note: If you know the name of the group monitor associated with a switch definition,
you can start it from the Work with Monitors display. Any monitors in the same
group which have a status that permits them to be started with the group
monitor will also be started. See Starting a monitor on page 42
Do the following to start the monitors for a switch definition:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
1. From the Work with Switch Definitions display, type a 9 (Start) next to the switch
definition you want and press Enter.
2. For the switch definition you selected, you should see the value in the Status
column change from INACTIVE to ACTIVE.
Ending monitors for a switch definition
This procedure ends the group monitor for the switch definition and extends the
request to any other monitors that participate in the group decision that have a status
that allows them to be ended. The status of a monitor may prevent it from participating
in the request. For information about what monitor status values are required for an
end request, see Table 1 in topic Actions available for monitors on page 39.
Note: If you know the name of the group monitor associated with a switch definition,
you can end it from the Work with Monitors display. Any monitors in the same
90
group which have a status that permits them to be end with the group monitor
will also be ended. See Ending a monitor on page 43.
Do the following to end the monitors for a switch definition:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 10 (End) next to the switch
definition you want and press Enter.
3. For the switch definition you selected, you should see the value in the Status
column change from ACTIVE to ENDING, FAILED, or INACTIVE.
Switching users manually
91
Switching users manually
The Set Switch Source (SETSWTSRC), is only one of the commands that you should
include in your event program to automate a switching operation. The SETSWTSRC
command switches users from the production to the backup system or from the
backup system to the production system.
Refer to What to include in your programs on page 146 for more information about
what to include in an event program to automate a switching operation.
This set of steps will not result in the event program for the switch definition being run.
To start a switching operation, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 11 (Set source) next to the
switch definition you want and press Enter.
3. The Set Switch Source (SETSWTSRC) display appears. For the Data source
prompt, specify the value for the system to which you are switching.
4. Press F10 (Additional parameters).
5. If switch definition is of type *TCP and you want MIMIX Monitor to end or start the
interface as needed on the production system, specify *YES for the Alter
production interface prompt.
Note: The AUTOSTART option on the TCP/IP interface is only altered if MIMIX
has ended the TCP/IP interface.
If you use the default value *NO, you must take action to manually end or start the
interface to the production system.
If the interface is active on the production system and you specify *NO on a switch
to the backup system, you must end the TCP interface manually before you
continue with Step 7 so that you do not have two interfaces started which use the
same impersonation address or alias.
6. If the switch definition is of type *SM517A and you want MIMIX Monitor to force
the switching hardware to change settings, specify *YES for the Force hardware
switch prompt. Refer to Synchronizing settings in the switching hardware on
page 92 for more information about when you should force a change.
7. To perform the switch, press Enter. One of the following occurs:
For a switch definition of type *TCP, the impersonation address or alias defined
to the switch is started or ended on the appropriate systems.
For a switch definition of type *SM517A or SM900A the physical switch is
performed. MIMIX Monitor uses the HDWSWT parameter specified in the
switch definition and the value you specified for the Data source (DTASRC
parameter) to determine the appropriate setting. For example, if the switch
definition includes HDWSWT(*A) and you specified to switch to the backup
system, the setting changes to B and all resources connected are redirected to
the backup system.
92
For a switch definition of type *NONE, you will see the Work with Switch
Definitions display. No activity is taken for the switch definition.
8. If you specified *NO for the Alter production interface prompt and you are
switching to the production system, you must start the interface on the production
system.
Refer to Configuring an automated switch on page 106 for information on how to
use MIMIX Model Switch Framework to automatically switch systems.
Synchronizing settings in the switching hardware
If the switch definition is of type *SM517A, you may find that the A or B indicator on
the gang switch controller does not correspond to the switch settings on the rack
chassis. Either of the following situations can cause this condition:
You are running in production mode and someone manually changes the switch
setting on the rack chassis. (You may want to lock the setting and remove the key
to prevent this from happening again.)
You performed a manual switch to the backup system and now want to perform an
automated switch back to the production system.
You can use the MIMIX Monitor command SETSWTSRC or the procedure Switching
users manually on page 91 to synchronize the hardware settings. When you specify
*YES for the Force hardware switch prompt, MIMIX Monitor checks the hardware
settings and will force a change at the hardware level if the settings do not match
what is expected for the requested switch operation.
In these examples, it is assumed that the switch definition specifies HDWSWT(*A)
and that you use hardware setting A for production.
Table 5. Hardware switch settings
Physical Settings Result of SETSWTSRC (FORCE*YES)
Rack
Chassis
Remote Sys-
tem Gang
Controller
Switch To Rack
Chassis
Remote Sys-
tem Gang
Controller
Effect on
Users
A B Backup B B Devices and
users are
switched
Production A A No effect.
Rack chassis
is not
changed,
users and
devices are
not switched.
Switching users manually
93
B A Backup B B No effect.
Rack chassis
is not
changed,
users and
devices are
not switched.
Production A A Devices and
users are
switched
Table 5. Hardware switch settings
Physical Settings Result of SETSWTSRC (FORCE*YES)
Rack
Chassis
Remote Sys-
tem Gang
Controller
Switch To Rack
Chassis
Remote Sys-
tem Gang
Controller
Effect on
Users
94
Displaying status for a switch definition
To display the status of a switch definition do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type a 15 (Status) next to the
switch definition you want and press Enter.
3. The Display Switch Status display appears. This display is automatically updated
as changes to the status occur.
Figure 7. Displaying switch status
The example in Figure 7 shows how the following information is displayed.
The left-most box contains information about the production system.
The right-most box contains information about the backup system.
The center-top box indicates where users are attached.
The center-bottom box indicates the status of the group monitor associated with
the switch definition.
The color blue indicates that the system or monitor is active.
The color red indicates that the system or monitor is inactive.
Arrows between the system boxes and the group monitor box indicate the
direction of data flow.
Di spl ay Swi t ch St at us SYSTEMB
Swi t ch def i ni t i on: MYTCP3
Syst em Syst em
Name : SYSTEMA Name : SYSTEMB
User s ar e on
St at us: I NACTI VE SYSTEMA St at us: ACTI VE
Type: PRODUCTI ON Type: BACKUP
Moni t or
I NACTI VE
Swi t ch Set t i ng: A Swi t ch Set t i ng: B
St ar t ed Cur r ent Legend .
Dat e 3/ 19/ 99 3/ 19/ 99
Ti me 11: 27: 39 11: 27: 46 Act i ve
I nact i ve
F3=Exi t F12=Cancel
The Switch Setting indicator only appears when the switch type is *SM900A or *SMS517A
Running the event program for a switch definition
95
Running the event program for a switch definition
To run the event program for a switch definition, do the following:
1. Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display.
2. From the Work with Switch Definitions display, type 18 (Run user program) next to
the switch definition you want and press Enter.
3. The event program runs immediately without starting the group monitor.
96
Accessing the Work with Device Entries display
By defining devices to the switch definition and using the Start Switch Screen
(STRSWTSCN) command during a switching operation, you can notify users of the
status of the system. The Work with Device Entries display shows a list of the devices
that are defined to the system and enables you to work with the devices.
Note: The use of switch device entries is optional. However, if you define devices
you should also define a logon message in the switch definition. If you define
device entries to a switch definition, the devices will be allocated and will
receive a special logon screen when the STRSWTSCN command is used for
that switch definition.
To access the Work with Device Entries display for a selected switch definition, do
one of the following:
Use the procedure in Accessing the Work with Switch Definitions display on
page 80 to access the Work with Switch Definitions display. Then, type a 13
(Work with devices) next to the switch definition you want and press Enter.
Using the name of the switch definition you want for name, type the command
WRKSWTDEVE SWITCH(name) and press Enter.
Adding all devices to a switch definition
If you want to add entries to the switch definition for all devices on the system, do the
following:
1. From the Work with Switch Definitions display, type a 13 (Work with devices) next
to the switch definition you want and press Enter.
2. The Work with Device Entries display appears. Press F8 (Load device entry).
3. The Load Switch Device Entries (LODSWTDEVE) display appears. Verify that you
want to load all devices. If necessary, change the value for the Device prompt.
4. At the Replace or add records prompt, specify the value that indicates action you
want MIMIX Monitor to take if a device already exists in the list for the switch
definition and press Enter.
Adding a device entry
To add a device entry to the switch definition, do the following:
1. From the Work with Device Entries display, type a 1 (Add) next to the blank line at
the top of the list and press Enter.
2. The Add Switch Device Entry (ADDSWTDEVE) display appears. Provide the
name of the device and a text description of the device and press Enter.
Changing a device entry
To change a device entry that is defined to the switch definition, do the following:
1. From the Work with Device Entries display, type a 2 (Change) next to the entry
Accessing the Work with Device Entries display
97
you want and press Enter.
2. The Change Switch Device Entry (CHGSWTDEVE) display appears. Change the
text description of the device and press Enter.
Removing a device entry
To remove a device entry that is defined to the switch definition, do the following:
1. From the Work with Device Entries display, type a 4 (Remove) next to the entry
you want and press Enter.
2. The Remove Switch Device Entry (RMVSWTDEVE) display appears. Verify the
device is the one you want to remove and press Enter.
Displaying a device entry
To display a device entry that is defined to the switch definition, do the following:
1. From the Work with Device Entries display, type a 5 (Display) next to the entry you
want and press Enter.
2. The Display Switch Device Entry (DSPSWTDEVE) display appears showing the
devices name and description.
Printing a device entry
To print a spooled file that contains a description of a device entry that is defined to
the switch definition, do the following:
1. From the Work with Device Entries display, type a 6 (Print) next to the entry you
want and press Enter.
2. The spooled file is created that contains the switch definition. Use your local
process to print your spooled files.
98
Displaying and ending the switch screen
Each switch definition can have its own logon message defined. During a switching
operation, you can display a message to devices defined to the switch definition by
using the Start Switch Screen (STRSWTSCN) command. When the STRSWTSCN
command is run, the devices are allocated and the logon screen message is
displayed on the devices.
A companion command, End Switch Screen (ENDSWTSCN) should be used when
the switching operation is complete to release the devices, allowing users to sign on.
Note: To automate switching operations, you should include the STRSWTSCN and
ENDSWTSCN commands in your event program.
Displaying the switch screen
To allocate the devices and send the logon message, do the following:
1. Type the command STRSWTSCN and press F4 (Prompt)
2. Specify the name of the switch definition you want and press Enter.
Ending the switch screen
To release the devices allocated by the switch definition, do the following:
1. Type the command ENDSWTSCN and press F4 (Prompt)
2. Specify the name of the switch definition you want and press Enter.
Changing the logon message during a switch
If you want to change the message displayed during the switching operation, use the
Change Switch Definition (CHGSWTDFN) command to change the text of the logon
message. If you want inform users at various points during the switch process, use
the CHGSWTDFN command multiple times.
Table 6 shows an example of what you might include in your event program to inform
users of the status of a switching operation. This example shows a partial event
Displaying and ending the switch screen
99
program that controls switching the direction of replication in MIMIX. In this example,
the switch definition name is CRITDATA.
Refer to the MIMIX Operations book for information about switching the direction of a
data group.
Table 6. Example of automation code for switching messages
/ * St ar t t he l ogon scr een, acqui r e t he devi ces */
STRSWTSCN SWI TCH( CRI TDATA)
/ * Change t he message t o not i f y user t hat t he swi t ch t o t he backup */
/ * syst emi s bei ng st ar t ed. */
CHGSWTDFN SWI TCH( CRI TDATA) MSG( ' St ar t i ng swi t ch' )
/ * Change t he message t o not i f y user t hat MI MI X Repl i cat or pr oduct */
/ * i s swi t chi ng dat a gr oup di r ect i on. */
CHGSWTDFN SWI TCH( CRI TDATA) MSG( ' Swi t chi ng dat a gr oups f or MI MI X Repl i cat or ' )
/ * Change t he message t o not i f y user t hat t he swi t ch i s compl et e */
CHGSWTDFN SWI TCH( CRI TDATA) MSG( ' Swi t chi ng compl et e' )
/ * End t he l ogon scr een, r el ease t he devi ce. */
ENDSWTSCN SWI TCH( CRI TDATA)
Using the MIMIX Model Switch Framework
100
CHAPTER 6 Using the MIMIX Model Switch
Framework
This chapter provides conceptual and reference information about MIMIX Model
Switch Framework.
What is MIMIX Model Switch Framework? The MIMIX Model Switch Framework is
a set of programs and commands that provide a consistent framework for performing
planned or unplanned switches. The commands are packaged with MIMIX Enterprise
and MIMIX Professional. Typically, a Certified MIMIX Consultant assists you in setting
up the programs and the switching environment.
MIMIX Model Switch Framework provides the underlying support for the MIMIX
Switch Assistant

interface within MIMIX Availability Manager and for the 5250


emulator switching interface accessible from option 5 on the MIMIX Basic Main Menu.
These preferred user interfaces are ready to use after a default switch framework is
configured and is identified to MIMIX in the Default model switch framework
(DFTMSF) policy for the installation.
Note: For information about using MIMIX Switch Assistant or using option 5 on the
MIMIX Basic Main Menu, see online help or the MIMIX Operations book. The
MIMIX Operations book also describes how to set policies for switching,
including policies that help you keep within best practices for switching
regularly.
Although not preferred, you can also use the MIMIX Model Switch Framework in
these ways:
Manually by running the RUNMON command on the associated group monitor, or
using Option 18, Run User Program on the Work with Switch Definitions display.
Manually by running the Run Switch Framework (RUNSWTFWK) command.
Automatically (triggered by associated monitors).
Phases of switching in MIMIX Model Switch Framework
101
Phases of switching in MIMIX Model Switch Framework
Each phase of a switch as shown by the steps in Figure 8 is needed to ensure a
complete (planned or unplanned) switch. The phases are described below.
Step 1: Switchover - This phase moves production system users to the backup
system. You will need two switchover processes, one for a planned switch and one for
an unplanned switch. For detailed information about the events in this phase, see
Events and status: Starting a planned switch to a backup system on page 109 and
Events and status: Starting an unplanned switch to a backup system on page 110.
Step 2: Synchronization - This phase replicates changes made on the backup
system, while the backup system acted as the temporary production system. In a
basic MIMIX environment, you would perform this phase after the production system
is up and running again. For detailed information about the events in this phase, see
Events and status: Starting the switch synchronization on page 111.
Step 3: Switchback - This phase switches users to the production system after all
changes have been replicated to the production system by the synchronization
process. For detailed information about the events in this phase, see Events and
status: Returning to the production system on page 112.
In Figure 8, the term backup system refers to the original backup system where the
MIMIX Model Switch Framework programs are stored. The term production system
102
refers to the Production system definition (PRDSYSDFN) parameter from the
CRTSWTFWK and CHGSWTFWK commands.
Figure 8. MIMIX switch cycle
Operating requirements
103
Operating requirements
The MIMIX Model Switch Framework requires the following:
MIMIX Enterprise or MIMIX Professional version 7 must be installed, including the
current service pack.
The user profile used to run the MIMIX Model Switch Framework commands and
which own its programs must be a valid user profile. A user profile may be not
valid if it is disabled or if *NONE is specified for its password. If you encounter this
situation, change the ownership of the program or change the user profile. Also,
the user profile must have MIMIX product level authority equivalent to *OPR.
In order to use the preferred user interfaces described in the MIMIX Operations
book, the default switch framework must be defined and specified in the
installation policies.
104
Securing your MIMIX Model Switch Framework environ-
ment
To secure your MIMIX Model Switch Framework environment, you should:
Set the product-level security to ON for all products in the installation library.
Ensure that the user profiles that run MIMIX Model Switch Framework commands
have the same level of authority to the commands in each of the following
products: MIMIX DB2 Replicator, MIMIX Object Replicator, and MIMIX Monitor.
Refer to the Using License Manager book for information on setting product-level
security and change authority levels for user profiles. The commands used in these
procedures support the value *ALL for the product as an easy way to consistently set
product-level security and authorization levels in multiple products.
MIMIX Model Switch Framework commands
105
MIMIX Model Switch Framework commands
The following commands are supplied with the MIMIX Model Switch Framework.
Create Switch Framework (CRTSWTFWK) - This command creates the switch
framework control area which controls switching scenarios between two systems.
The initial status of the control area is set to PCMP which indicates that a switch to
the backup system can be performed.
You can run more than one switch framework process at a time. For example, you
could have two production systems switch to the same backup system. To run
multiple switch processes enter the CRTSWTFWK command and specify a
unique library for each system for the Exit program library parameter.
When you issue the Create Switch Framework (CRTSWTFWK) command it also
creates a data area and a group monitor. The data area and group monitor will
have the same name as the switch framework. For more information about group
monitors refer to Group monitors (*GROUP) on page 77 and Changing
monitors on page 51.
Change Switch Framework (CHGSWTFWK) - This command changes the
switch framework control area which controls switching scenarios between two
systems.
Check Switch Framework (CHKSWTFWK) - This command checks the switch
framework control information and reports the status of the switching operation.
When you enter this command the system issues a message describing the
current state of the switch operation. For more information see MIMIX Model
Switch Framework status codes on page 117.
Delete Switch Framework (DLTSWTFWK) - This command deletes the switch
framework control area.
Retrieve Switch Framework (RTVSWTFWK) - This command is used in a CL
program to retrieve the current status of the switch framework. This command
returns the same status indicators as the CHKSWTFWK command. For more
information see MIMIX Model Switch Framework status codes on page 117.
Run Switch Framework (RUNSWTFWK) - This command designates the
system that you want to use as the source system and the switch operation that
you want performed. You should run this command once for each of the phases of
a switch.
This command can only be run from the system where the MIMIX Model Switch
Framework exists. By design, this is the original backup system.
106
Configuring an automated switch
To set up an automated switch environment using MIMIX Model Switch Framework,
perform the following:
1. Run the Create Switch Framework (CRTSWTFWK) command to create the
MIMIX Model Switch Framework definition for your switching environment.
2. Edit the MIMIX Model Switch Framework user exit programs to make them
specific for the systems involved with the switch. These programs are described in
MIMIX Model Switch Framework user exit programs on page 121.
3. Edit the MSFEVENT event program to ensure it is applicable to your switching
environment. This program is shipped with the MIMIX Model Switch Framework
and is located in file MMTEMPLSRC in the MIMIX installation library.
4. Run the Create Switch Definition (CRTSWTDFN) command to create a MIMIX
Monitor switch definition and specify EVTPGM(MSFEVENT). Enter option 12 on
the Work with Switch Definitions (WRKSWT) display, next to the switch definition
you just created to work with the monitor definitions associated with it.
5. Create the monitors that will control your switching environment. Refer to the
subclass information in Interval monitors (*INTERVAL) on page 72.
6. Return to the Work with Switch Definitions (WRKSWT) display and start the switch
definition. This will also start the monitors that control your MIMIX Model Switch
Framework definition.
7. To enable the switch framework to be used with MIMIX Switch Assistant or with
the switching option on the MIMIX Basic Main Menu, the framework created in
Step 1 must be specified as the value of the Default model switch framework
(DFTMSF) policy for the installation. For detailed information about setting
policies, see the MIMIX Operations book.
About the RUNSWTFWK command
107
About the RUNSWTFWK command
The Run Switch Framework (RUNSWTFWK) command is used to perform the
switchover, synchronization, and switch back processes. RUNSWTFWK provides
underlying support for MIMIX Switch Assistant. When you are using the MIMIX Model
Switch Framework to perform a switching operation, the MIMIX Model Switch
Framework will issue status messages to inform you of the current status of the
switching operation.
During a switching operation, MIMIX Model Switch Framework waits for the data
group to end before continuing processing. As long as the submit of the switch is
successful, MIMIX Model Switch Framework processes the next data group in line. It
does not wait for the switch to complete. Thus, a failure during a switching operation
may result in a partially switched status.
In the event that MIMIX Model Switch Framework fails during a switching operation,
you must resolve the problem that occurred on the data group as well as complete the
switch of the data group manually. For information about switching, see the MIMIX
Operations book.
The RUNSWTFWK command can only be run from the backup system. When you
enter the RUNSWTFWK command you can specify:
If you want the MIMIX Model Switch Framework to automatically start the data
groups after a planned switch or if you would rather start the data groups yourself.
If you want MIMIX to set the auditing level when performing a STRDG operation.
You also have the option to manually ensure that the audit levels for all objects
that are configured for replication by MIMIX have been set properly, otherwise,
replication errors may occur.
The Wait time (seconds) (WAIT) prompt is used to specify the number of seconds
to wait for all of the active data group processes to end. The function of the default
value *DFT is different for planned switches than it is for unplanned switches. For
a planned switch, the value *DFT is equivalent to the value *DGSELECT. For an
unplanned switch, the value *DFT is set to wait 300 seconds (5 minutes) for all of
the active data group processes to end.
If you specify a value for the WAIT parameter you can use the Timeout option
parameter (TIMOUTOPT) to specify what action to take when the wait time you
specified is reached. The function of the default value *DFT is different for planned
switches than it is for unplanned switches. For a planned switch, the value *DFT is
equivalent to the value *QUIT. When the value specified for the WAIT parameter is
reached, the current process quits and returns control to the caller. For an
unplanned switch, the value *DFT is equivalent to the value *NOTIFY. When the
value specified for the WAIT prompt is reached, an inquiry message is sent to
notify the operator of a possible error condition.
Whether or not you want the MIMIX Model Switch Framework to switch a data
group when there are data group entries with an active (pending) status. The
Conditions that end switch (ENDSWT) parameter is used to specify which
conditions should end the switch process. The function of the default value *DFT
is different for planned switches than it is for unplanned switches.
108
For a planned switch, the value *DFT is equivalent to the value *ALL. The
value *ALL uses all available options to end the switch process and is the most
conservative way to switch data groups. Additionally, choosing
ENDSWT(*ALL) ensures that your programs will automatically include any
future ENDSWT parameter values that may be added to maintain a
conservative approach to the switching operation.
For an unplanned switch, the value *DFT
is equivalent to the value *NONE. The value *NONE does not end switching
even when conditions exist that are not compatible with best practices for
switching. For example, if open commit cycles exist at the time of a switch, the
uncommitted changes are not applied to the target system, and the data may
be lost if the open commits are not resolved before the data group is started
following the switch.
For an unplanned switch, the switch process is ended if there are any backlogs
for the database apply process (similar to the value *DBPND). No other
conditions that end switching are checked and switching is not ended even
when conditions exist that are not compatible with best practices for switching.
For example, if open commit cycles exist at the time of a switch, the
uncommitted changes are not applied to the target system and the data may
be lost if the open commits are not resolved before the data group is started
following the switch.
For more information about how to check for pending object activity entries and
open database commit cycles, see the MIMIX Operations book.
Whether or not you want the MIMIX Model Switch Framework to create and attach
a new journal receiver for the user (database) journal during the switching
operation. If you do not want the MIMIX Model Switch Framework to create new
journal receivers for a specified data group choose CHGUSRRCV(*NO).
Whether or not you want the MIMIX Model Switch Framework to create and attach
a new journal receiver for the system (audit) journal (QAUDJ RN) during the
switching operation. If you want the MIMIX Model Switch Framework to create a
new journal receiver for the first data group that handles object replication you
should choose CHGSYSRCV(*FIRST).
For more information about the options available to you when you are using the
RUNSWTFWK command, enter the command and press F1 when the cursor is at the
top of the display.
RUNSWTFWK success and failure indicators
The following sections identify the events that occur during each phase of a a switch
and their resulting status indicators or messages for success or failure. You can also
find a descriptive summary of each phase in online help for MIMIX Switch Assistant or
online help for the switching option on the MIMIX Basic Main Menu.
Status values are displayed in the content area of the MIMIX Switch Assistant window
and in the job log.
RUNSWTFWK success and failure indicators
109
Events and status: RUNSWTFWK command is invoked
The following is the initialization process flow that occurs when you issue the
RUNSWTFWK command:
Events and status: Starting a planned switch to a backup system
When you start a planned switch from the production system to the backup system,
MIMIX does the following:
Ends the user production and backup environments on the appropriate systems.
Switches the selected data groups.
Starts the user production environment on the local (backup) system.
Optionally, starts the backup environment on the remote system and starts the
selected data groups.
Table 8 shows the process flow that occurs when the RUNSWTFWK PRC(*BCKUP)
TYPE(*PLANNED) command is invoked:
Table 7. RUNSWTFWK initialization process
RUNSWTFWK events Success status/MSG Fail status/MSG
Check Switch status for enabled status LVE8001
Get list of data group definitions, if there are
no data groups to process, send LVE8002.
LVE8002
If *PROD or *BCKUP is specified:
Determine if there are potential errors.
Call SWTFWKCFM confirmation program.
If *SYNC, call switch confirmation program
SWTFWKCFM.
If SWTFWKCFM returns a 1 to end
processing then send message LVE8005
LVE8005
Table 8. RUNSWTFWK planned backup
RUNSWTFWK PRC(*BCKUP) TYPE(PLANNED) events Success
status or
messages
Fail status
or mes-
sages
Check the switch status to determine if the system is in the
correct state to run.
BESD LVE8004
If associated with a switch definition, end the switch. BBEB
Call the ENDBCKUP user program to end backup on the
backup system.
LVE8006
BEBF
Check the local data area for a successful indicator. BBEP LVE8007
BEBF
110
Events and status: Starting an unplanned switch to a backup system
When you start an unplanned switch from the production system to the backup
system, MIMIX does the following:
Ends the user backup environment on the local system.
Switches the selected data groups.
Starts the user production environment on the local system.
Call the ENDPROD user program to end production on the
production system
LVE8006
BEPF
Check the local data area for a successful indicator. BDGD LVE8007
BEPF
End selected data groups. BSWT LVE8007
BEDG
Switch selected data groups. BSSS LVE8003
BESW
If associated with a switch definition, then run the
SETSWTSRC command.
BBSP BSSF
LVE8009
Call the STRPROD user program to start production on the
backup system.
LVE8006
BSPF
Check the local data area for a successful indicator. BCMP LVE8007
BSPF
Optional, if you want to start the data groups. BBSB
Call the STRBCKUP user program to start the backup on
the original production system.
BSTR LVE8006
BSBF
Check the local data area for a successful indicator. LVE8007
BSBF
Call the DGSELECT user program to determine which data
groups to start.
LVE8003
BEST
Run STRDG command for selected data groups. ACMP
Table 8. RUNSWTFWK planned backup
RUNSWTFWK PRC(*BCKUP) TYPE(PLANNED) events Success
status or
messages
Fail status
or mes-
sages
RUNSWTFWK success and failure indicators
111
Table 9 shows the process flow that occurs when the RUNSWTFWK PRC(*BCKUP)
TYPE(*UNPLANNED) command is invoked:
Events and status: Starting the switch synchronization
When you start the synchronization step of the switch operation, MIMIX starts the
selected data groups with the original backup system as the source system. Also, the
user backup environment is started on the remote system
Table 10 shows the process flow that occurs when the RUNSWTFWK PRC(*SYNC)
command is invoked:
Table 9. RUNSWTFWK unplanned backup
RUNSWTFWK PRC(*BCKUP) TYPE(UNPLANNED)
Events
Success
Status or
Messages
Fail Status
or Mes-
sages
Check the switch status to determine if the system is in the
correct state to run.
FBEB LVE8004
Call the ENDBCKUP user program to end backup on the
backup system.
LVE8006
FEBF
Check the local data area for a successful indicator. FDGD LVE8007
FEBF
End selected data groups. FSWT LVE8007
FEDG
Switch selected data groups. FSSS LVE8003
FESW
If associated with a switch definition, then run the
SETSWTSRC command.
FBSP LVE8009
FSSF
Call the STRPROD user program to start production on the
backup system.
LVE8006
FSPF
Check the local data area for a successful indicator. FCMP LVE8007
FSPF
Table 10. RUNSWTFWK synchronization
RUNSWTFWK PRC(*SYNC) Events Success
Status or
Messages
Fail Status
or Mes-
sages
Check the switch status to determine if the system is in the
correct state to run.
SBSB LVE8004
Call the STRBCKUP user program to start backup on the
production system.
LVE8006
SSBF
112
Events and status: Returning to the production system
When you start the switch back to the production system from the backup system,
MIMIX does the following:
Ends the user production and backup environments on the appropriate systems.
Switches and starts the selected data groups.
Starts the production environment on the remote system.
Optionally, starts the backup environment and data groups on the appropriate
systems.
Note: Before you perform this step, you should ensure that the data group
entries are synchronized. If the original switch was unplanned, you should
perform journal analysis to find any orphaned entries and take appropriate
actions to correct any errors.
Table 11 shows the process flow that occurs when the RUNSWTFWK PRC(*PROD)
command is invoked:
Check the local data area for a successful indicator, if
successful set the status code.
SSTR LVE8007
SSBF
Call the DGSELECT user program to determine which data
groups to start, if end immediate is selected.
LVE8003
SEST
Run STRDG command for selected data groups. SCMP
Table 10. RUNSWTFWK synchronization
RUNSWTFWK PRC(*SYNC) Events Success
Status or
Messages
Fail Status
or Mes-
sages
Table 11. RUNSWTFWK PRC(*PROD)
RUNSWTFWK PRC(*PROD) Events Success
Status or
Messages
Fail Status
or Mes-
sages
Check the switch status to determine if the system is in the
correct state to run.
PBEB LVE8004
Call the ENDBCKUP user program to end backup on the
production system.
LVE8006
PEBF
Check the local data area for a successful indicator. PBEP LVE8007
PEBF
Call the ENDPROD user program to end production on the
backup system.
LVE8006
PEPF
Check the local data area for a successful indicator. PDGD LVE8007
PEPF
RUNSWTFWK success and failure indicators
113
End selected data groups. PSWT LVE8007
PEDG
Call SWTDG on the selected data groups or switch the
selected data groups.
PSSS LVE8003
PESW
If there is an associated switch definition, then run the
SETSWTSRC command
PBSP LVE8009
PSSF
Call the STRPROD user program to start production on the
production system.
LVE8006
PSPF
Check the local data area for a successful indicator. PSPC LVE8007
PSPF
Optional if you want to start the data groups PBSB
Call the STRBCKUP user program to start backup on the
backup system.
LVE8006
PSBF
Check the local data area for a successful indicator. PSTR LVE8007
PSBF
Call the DGSELECT user program to determine which data
groups to start.
LVE8003
PEST
Call STRDG on selected data groups. PSSD
If associated with a switch definition, then start the switch. PCMP
Table 11. RUNSWTFWK PRC(*PROD)
RUNSWTFWK PRC(*PROD) Events Success
Status or
Messages
Fail Status
or Mes-
sages
114
Enabling the MIMIX Model Switch Framework
To enable the MIMIX Model Switch Framework you would specify:
CHGSWTFWK SWTFWK( switch-framework-control-area)
STATUS( *ENABLED)
Disabling the MIMIX Model Switch Framework
You can disable the MIMIX Model Switch Framework by entering the following
command:
CHGSWTFWK SWTFWK( switch-framework-control-area)
STATUS( *DI SABLED)
MIMIX Model Switch Framework messages
115
MIMIX Model Switch Framework messages
The messages issued by the MIMIX Model Switch Framework are sent to the
interactive job log of the user running the command and to the MIMIX message log.
You can use the WRKMSGLOG command to view the MIMIX message log entries.
116
Completing a switch after encountering errors
If you encounter an error condition during one of the switch phases you can complete
the switch phase without restarting the entire process.To restart the switch operation
from the last status checkpoint, enter the RUNSWTFWK command with the same
parameters that were used with the command when it was initially entered.
Depending on the type of failure that you encounter you may need to perform
additional steps before issuing the RUNSWTFWK command.
Note: MIMIX Switch Assistant provides information to resolve the error and where to
restart the process.
MIMIX Model Switch Framework status codes
117
MIMIX Model Switch Framework status codes
The following status codes may be returned when you issue a CHKSWTFWK or
RTVSWTFWK command.
Table 12. MIMIX Model Switch Framework status codes
Status codes Description
These status codes are associated with switching back to the original production
system
PBEB Switch back to the original production system before the ENDBCKUP
program is run on the remote system
PBEP Switch back to the original production system before the ENDPROD
program is run on the local system
PBSB Switch back to the original production system before the STRBCKUP
program is run on the local system
PBSP Switch back to the original production system before the STRPROD
program is run on the remote system
PCMP Switch back to the original production system is complete (planned or
unplanned switch to backup is next step)
PDGD Switch back to the original production system, ending data groups
(ENDDG) from the backup system to the production system.
PEBF Switch back to the original production system, an error was detected or
reported by the user when running the ENDBCKUP program on the
remote system
PEDG Switch back to the original production system, an error was detected in
ENDDG or the user requested an immediate end from the DG selection
program.
PEPF Switch back to the original production system, an error was detected or
reported by the user when running the ENDPROD program on the local
system
PEST Switch back to the original production system, an error was detected in
STRDG or the user requested an end from the DG selection program
PESW Switch back to the original production system, an error was detected in
SWTDG or the user requested an end from the DG selection program
PSBF Switch back to the original production system, an error was detected or
reported by the user when running STRBCKUP on the local system
PSPC Switch back to the original production system, STRDG was *NO, no data
groups were started.
PSPF Switch back to the original production system, an error was detected or
reported by the user when running STRPROD on the remote system
118
PSSD Switch back to the original production system, starting the associated
switch definition (STRSWT), if one exists.
PSTR Switch back to the original production system before the STRDG
processing is done
PSWT Switch back to the original production system before the SWTDG
processing is done
These status codes are associated with an unplanned switch to the backup system
FBEB Unplanned switch to the backup system before the ENDBCKUP program
is run on the local system
FBSP Unplanned switch to the backup system before the STRPROD program is
run on the local system
FCMP Unplanned switch to the backup system is complete (Synchronization
(*SYNC) phase of the switch framework is next step)
FDGD Unplanned switch to the backup system, ending data groups (ENDDG)
from the production system to the backup system.
FEBF Unplanned switch to the backup system, an error was detected or reported
by the user when running the ENDBCKUP program on the local system
FEDG Unplanned switch to the backup system, an error was detected in ENDDG
or the user requested an immediate end from the DG selection program.
FESW Unplanned switch to the backup system, an error was detected in SWTDG
or the user requested an end from the DG selection program
FSPF Unplanned switch to the backup system, an error was detected or reported
by the user when running the STRPROD program on the local system
FSSF Unplanned switch to the backup system, an error was detected when
running the SETSWTSRC command.
FSSS Unplanned switch to the backup system before setting the switch source
(SETSWTSRC).
FSWT Unplanned switch to the backup system before the SWTDG processing is
done
These status codes are associated with planned switch to the backup system
BBEB Planned switch to the backup system before the ENDBCKUP program is
run on the local system
BBEP Planned switch to the backup system before the ENDPROD program is
run on the remote system
BBSP Planned switch to the backup system before the STRPROD program is run
on the local system
Table 12. MIMIX Model Switch Framework status codes
Status codes Description
MIMIX Model Switch Framework status codes
119
BCMP Planned switch to the backup system is complete (Synchronization
(*SYNC) phase of the switch framework is next step)
BDGD Planned switch to the backup system, ending data groups (ENDDG) from
the production system to the backup system.
BEBF Planned switch to the backup system, an error was detected or reported
by the user when running the ENDBCKUP program on the local system
BEDG Planned switch to the backup system, an error was detected in ENDDG or
the user requested an immediate end from the DG selection program.
BEPF Planned switch to the backup system, an error was detected or reported
by the user when running the ENDPROD program on the remote system
BESD Planned switch to the backup system before the end switch processing
(ENDSWT).
BESW Planned switch to the backup system, an error was detected in SWTDG or
the user requested an end from the DG selection program
BSPF Planned switch to the backup system, an error was detected or reported
by the user when running the STRPROD program on the local system
BSSF Planned switch to the backup system, an error was detected when running
the SETSWTSRC command.
BSSS Planned switch to the backup system before setting the switch source
(SETSWTSRC).
BSWT Planned switch to the backup system before the SWTDG processing is
done
These status codes are only encountered if the switch framework is set up to auto-
matically start the data groups after a planned switch operation
ACMP Planned switch to the backup system is complete and the data groups
have been automatically started (Switch back to the original production
system (*PROD) phase of the switch framework is the next step)
BBSB Planned switch to the backup system before the STRBCKUP program is
run on the remote system
BEST Planned switch to the backup system, an error was detected in STRDG or
the user requested an end from the DG selection program
BSBF Planned switch to the backup system, an error was detected or reported
by the user when running STRBCKUP on the remote system
BSTR Planned switch to the backup system before the STRDG processing is
done
These status codes are associated with the synchronization phase
SBSB Synchronization phase before the STRBCKUP program is run on the
remote system
Table 12. MIMIX Model Switch Framework status codes
Status codes Description
120
SCMP Synchronization phase is complete (Switch back to the original production
system (*PROD) phase of the switch framework is the next step)
SEST Synchronization phase, an error was detected in STRDG or the user
requested an end from the DG selection program
SSBF Synchronization phase, an error was detected or reported by the user
when running STRBCKUP on the remote system
SSTR Synchronization phase before the STRDG processing is done
Table 12. MIMIX Model Switch Framework status codes
Status codes Description
MIMIX Model Switch Framework user exit programs
121
MIMIX Model Switch Framework user exit programs
These user exit programs are supplied to enable you to customize your switching
environment. You should copy these programs and customize them for your
installation.
The source templates for the following user exit programs are located in file
MMTEMPLSRC in the MIMIX installation library. You can access these programs and
change them to address the needs of your system environment.
Note: Before you make any changes to these templates, you should copy them into
a different source file so the changes will not be lost if any updates are
required to this template source in the future.
Use the Create CL Program (CRTCLPGM) command to compile the following
programs:
DGSELECT - This program selects the data groups that should be switched or
started. You can:
Change the value for the WAIT parameter.
Indicate if you would like to have the switch end if there are database errors.
Choose to stop the switch framework process immediately. You can do this by
accessing the source for this program and changing the code so the program
passes a 2 for the &ENDDBERR variable.
When this program is called for starting the data groups, you can select to not start
the target (apply) processes for the data group.
ENDBCKUP -This program ends the user's backup environment.
ENDPROD - This program ends the user's production environment.
STRBCKUP - This program starts the user's backup environment.
STRPROD - This program starts the user's production environment.
You can specify that you want to stop the switching process by accessing the source
for the programs listed above and changing the code so the program sets the LDA
data area to a value other than SUCCESSFUL.
SWTFWKCFM - This program confirms that you want to start the switch framework
processing. You can specify that you want to stop the switching process by accessing
the source for this program and changing the code so the program passes a 1 for the
&RESPONSE variable.
The default action of this program is to start the switching process.
122
Orphaned data and objects
Orphaned data and objects are those that have not been sent to the backup system
when a production system failure occurs.
You can prevent orphaned data by ensuring that there are no jobs other than MIMIX
currently active on the source system. To ensure this, you may need to end all
interactive and batch subsystems other than those associated with MIMIX. You
should also prevent your users from accessing either system until after the switch is
complete and the data group is restarted.
MIMIX provides journal analysis tools for user journal replication processes that can
be used after an unplanned switch to identify any orphaned data.
123
CHAPTER 7 Working with the UPS monitor
This section provides procedures for configuring IBM Power
TM
Systems for use with
the UPS monitor, customizing the UPS monitor, and working with functions that are
unique to the UPS monitor.
The uninterruptible power supply (UPS) monitor is a predefined monitor that can
assist you in the event of a power failure if the system is connected to an intelligent
uninterruptible power supply. The UPS monitor is shipped with this release of MIMIX
Monitor. You can use MIMIX Monitor without ever using the UPS monitor, however,
you may find that the UPS monitor can play a useful role in meeting your availability
management requirements. This section describes how to customize the UPS
monitor to the needs of your enterprise.
124
UPS monitor highlights
The UPS monitor requires that an intelligent uninterruptible power supply be
connected to the system where the monitor is used. The UPS monitor also requires
some initial configuration before you use standard MIMIX Monitor interfaces to
activate it. When a power failure occurs and the system is running on the UPS battery
backup, the UPS monitor tracks the amount of available backup power and the
amount of time before the UPS will expire. The UPS monitor notifies the system
operator and users of the time remaining before the UPS power drains to a level that
requires that system functions be ended. The UPS monitor then performs the steps
necessary to power down the system in a normal, controlled manner that reduces the
likelihood of abnormal system terminations and subsequent long IPLs.
Note: You may need to order and install the iSeries power warning feature and have
it connected to the UPS before you use the monitor.
A key concept for the UPS monitor is that of maximum UPS battery time. This is the
amount of time that the system can function while running on auxiliary power from the
UPS battery. This time must be greater than the time needed to prepare the system
and perform a power down. With the UPS monitor, you have a degree of control over
how the system is prepared for a power down and the type of power down that will
occur.
When you configure the UPS monitor, you can specify a series of preparation
functions to perform before shutting down the system, the type of power down you
want, and whether or not you want the UPS monitor to restart the system. You can
also specify exit programs to call when preparing to power down the system after a
power failure and exit programs to use when power is restored to the system.
During configuration you can specify any combination of the following preparation
functions and the order in which they occur:
Send a final warning message to users
Hold job queues
Run a failure exit program
You also have the choice of the following power down options:
In a controlled power down, the system is powered down using the operating
system command PWRDWNSYS OPTION(*CNTRLD). The PWRDWNSYS
command uses the delay and restart values you specify during configuration. The
subsystem ends all active jobs in a controlled manner. Programs running in the
active jobs are allowed to perform clean up activities for the specified delay time. If
the possibility exists that an active job could begin to loop or send inquiry
messages to the system operator, you should specify a value for the DELAY
parameter during configuration. When the system is operating on auxiliary power
and the delay time specified passes the power down process begins without
additional job cleanup activity.
In an immediate power down, the system is powered down using the operating
system command PWRDWNSYS OPTION(*IMMED). The subsystem
immediately ends all active jobs. The system value QPWRDWNLMT (maximum
UPS monitor highlights
125
time for PWRDWNSYS *IMMED) controls the amount of time allowed for cleanup.
Programs running in the active jobs may not be allowed to complete any cleanup
activities. This may cause undesirable results if data has been partially updated.
When the system is operating on auxiliary power the power down process begins
without additional job cleanup activity.
In an instant power down, the system value QUPSDLYTIM (uninterruptible
power supply delay time) is set to 0 and the UPS monitor is ended. The system
immediately saves main storage and begins to power down. The system will act
as if the battery power has expired. The system is not restarted after the power
down.
Through the use of a failure exit program, you can specify your own processes for
ending the system prior to a power down. Similarly, you can specify a restore exit
program to control activity to occur if the power is restored before the battery expires.
Operator intervention: The UPS monitor is initially set so that if the monitor
determines that the system must be shut down, no operator action is necessary to
power down the system. Your enterprise may prefer or require that an operator
intervene before the power down begins.
The Request operator response (OPRRSP) parameter on the Change UPS
Configuration command determines whether or not the UPS monitor sends an inquiry
message to the system operator before starting the power down process.
When the Request operator response (OPRRSP) is set to *NO, the power down
process starts automatically. When it is set to *YES, the UPS monitor sends an inquiry
message to the system operator (QSYSOPR) when the shutdown preparation
sequence completes and before starting the power down process. The operator has
two minutes in which to respond to the inquiry message. If the operator does not reply
within two minutes, the power down process continues.
An operator reply of Y (Yes) to the inquiry message continues the power down
process. An operator reply of N (No) prevents the power down from starting. When
the operator reply is N (No), the UPS monitor ends and no longer monitors the UPS.
However, a reply of N (No) does not ensure that the system will remain active. If the
battery power supply is exhausted, the system may still power down. The operating
system may automatically power down the system based on the value of the
QUPSDLYTIM system value.
The UPS monitor also enables you to warn users at several points while the system is
running on auxiliary power. You can specify a group of users to receive messages, the
types of messages to send, the text of the messages, and the frequency in which they
are sent. The UPS monitor can send messages when the system is initially switched
to UPS power, at intervals while running on UPS power, when the power down
process is about to begin, and when system power is restored.
126
Checklist: UPS configuration
Before you can use the UPS monitor, you need to ensure that the system is
configured appropriately and that the operating environment allows the UPS monitor
to always be active. Do the following:
1. Ensure that the UPS is configured correctly and connected to the system. The
uninterruptible power supply (UPS) must be configured to communicate with the
system. A separate communications cable must be connected between the UPS
communications interface port and the system UPS port. The systems power
must be plugged into the UPS. Refer to the operator's guide for the UPS for the
steps required to configure the UPS for intelligent communications. This step is
required.
2. Estimate the time needed for the system to perform the preparation functions and
to perform the type of power down you want. Also determine the maximum
amount of time that the system can run on the UPS battery. This step is required
before you configure the UPS monitor. For more information see Evaluating
battery time requirements on page 127.
3. Modify your startup program so that the UPS monitor remains active at all times.
Refer to Ensuring the UPS monitor is always active on page 129.
4. Set system values so that the UPS monitor can control the power down process in
the event of a power failure. This step is required. Refer to Setting system
values for the UPS monitor on page 130.
5. Ensure that the job priority for the UPS monitor is higher than all other interactive
and batch jobs. This step is required. Refer to Setting the job priority for the UPS
monitor on page 131.
6. Configure the UPS monitor. Refer to Configuring the UPS monitor on page 133.
7. Start the MIMIXUPS subsystem using the command STRSBS SBSD(MIMIXUPS).
8. Start the UPS monitor by referring to Starting a monitor on page 42.
9. Display the status of the UPS monitor by referring to Displaying status for the
UPS monitor on page 141. You should see that the monitor is active, UPS power
should be 100 percent, and the UPS operational status should be standby.
10. Test the UPS monitor configuration by referring to Testing the UPS configuration
on page 137.
11. Update the available UPS power by referring to Updating the available UPS
power on page 138.
12. Test the power failure and restore processes by referring to Testing power
changes on page 139.
Evaluating battery time requirements
127
Evaluating battery time requirements
You need to provide the UPS monitor with an estimate of the maximum amount of
time for which the UPS (uninterruptible power supply) can provide auxiliary power. To
determine this value, you need to compare the UPS manufacturer's maximum battery
time to the time needed to perform the functions in the preparation sequence and
power down the system.
Do the following:
1. Determine the preparation time. This is an estimate, in minutes, of how much
time is needed to complete the functions in the preparation sequence. The
preparation sequence can include any or all of the following functions:
Send a final warning message to users
Hold all job queuesRun the failure exit program
Include in your estimate all functions that you specify in the preparation
sequence. The amount of time needed for these activities can only be
determined by experience with your system. Be conservative in your
estimates.
When you configure the UPS monitor you need to provide this estimate.
2. Determine the power down time. This is a group of estimates, in minutes, of the
amount of time needed to power down the system. Determine an estimate for
each of the following power down options:
*CNTRLD
*IMMED
*INSTANT
Note: The power down options are described on UPS monitor highlights on
page 124. The time needed to perform each of the power down options
can only be determined by experience with your system. Be conservative
in your estimates.
When you determine the estimate for the controlled power down (*CNTRLD) be
sure to include any delay time that you specify in the configuration options.
Convert the delay time from seconds to minutes when you add it to your estimate.
One possible way to estimate the time needed for an immediate power down
(*IMMED) is to determine how much time is needed to end all subsystems while
the system is running a regular workload (the ENDSBS SBS(*ALL)
OPTION(*IMMED) command).
When you configure the UPS monitor you need to provide these estimates.
3. Determine the UPS manufacturer's maximum battery time. Use the tables found
in the operators guide for the UPS to determine the maximum amount of time that
the battery can power the system. Prepare your estimate with the assumption that
the system will use the full amount of power available from the UPS. Be
conservative in your estimates.
Note: As the UPS battery ages, power will drain from an unused battery and may
128
cause the battery to expire. A drained or expired battery does not protect
your system. The UPS monitor cannot determine if the battery is drained.
You should periodically check the UPS indicators and recharge the battery
when necessary. (You could even create a user-defined time monitor to
periodically remind you to check the battery.)
4. Add the preparation time from Step 1 to the estimate for the power down option
(Step 2) that you plan to use. This is the amount of time you need to prepare the
system and power down.
5. Compare the manufacturer's time in Step 3 to the amount of time you need to
prepare and power down the system in Step 4. If the manufacturer's time is larger,
you can use either value for the maximum battery time field when you configure
the UPS monitor.
6. If you need more time than the manufacturer's estimate, consider changing the
activities that are specified in the preparation sequence so that they and the
power down can complete before the battery expires.
Ensuring the UPS monitor is always active
129
Ensuring the UPS monitor is always active
If the UPS monitor is not active when a power failure occurs, the operating system will
power down the system. By modifying your startup program you can ensure that the
UPS monitor remains active at all times.
Do the following to ensure that the system is in the proper state to run the UPS
monitor:
1. Add the following commands to the end of your start up program to start the
MIMIXUPS subsystem and the UPS monitor. Starting these activities ensures that
the UPS monitor is started after each IPL.
STRSBS SBSD( MI MI XQGPL/ MI MI XUPS)
monitor-installation-libr ar y/ STRMON MONI TOR( UPSMON)
2. Ensure that you have the QUPSDLYTIM (uninterruptible power supply delay time)
system value set so that it is greater to or equal to the value specified in the UPS
configuration for the maximum battery time. For more information see Evaluating
battery time requirements on page 127.
130
Setting system values for the UPS monitor
You need to set three system values so that the UPS monitor can monitor the UPS
message queue and can control the power down process in the event of a power
failure.
Do the following to set the system values:
1. Type the command WRKSYSVAL and press Enter.
2. The Work with System Value display appears. Position the list to the
QPWRRSTIPL system value. Type a 2 next to the QPWRRSTIPL system value
and press Enter.
3. The Change System Value display appears. Type a 1 at the Auto-IPL after power
restored prompt and press Enter. This ensures that the system automatically IPLs
after power is restored.
4. The Work with System Values display appears again. Position the list to the
QUPSDLYTIM system value. Type a 2 next to the QUPSDLYTIM system value
and press Enter.
5. The Change System Value display appears. The value of the Delay time prompt
must be equal to or greater than value you specify in the UPS Configuration for
the maximum battery time. Convert the value of the maximum battery time from
minutes to seconds (multiply by 60) to match the units for the system value.
Specify this value, or a higher number, as the value for the Delay prompt and
press Enter.
Note: Do not use special values *NOMAX, *CALC, OR *BASIC for this system
value. If the QUPDSLYTIM system value is set to a special value or if it is
less than the value specified for the maximum battery time in the UPS
configuration, the UPS monitor will change the value of QUPSDLYTIM
every time the UPS monitor is started. If *NOMAX is used and the
QUPSMSGQ message queue is not allocated when a power failure is
detected, the system will power down immediately.
6. The Work with System Values display appears. Type a 2 next to the QUPSMSGQ
system value and press Enter.
7. The Change System Values display appears. Type UPSMONMQ for the Message
queue prompt. Type the name of the MIMIX Monitor product library for the Library
prompt. If you used the default value during installation, the library name is MIMIX.
Press Enter.
If the UPS monitor is not active when a power failure occurs, the operating system
performs the power down process. The operating system delays the power down
process by the value specified (except for *NOMAX) for the QUPSDLYTIM system
value.
Setting the job priority for the UPS monitor
131
Setting the job priority for the UPS monitor
For the UPS monitor to function quickly and efficiently, the run priority of its job must
be a higher priority than all other interactive and batch jobs. A run priority of 10 should
be sufficient.
When the UPS monitor is not performing a function, it switches into a delay mode
which reduces the potential overhead of a continuous polling request.
Do the following to verify the run priority for the UPS monitor job:
1. Type the command WRKACTJOB and press Enter.
2. The Work with Active J obs display appears. Press Page Down to locate the
MIMIXUPS subsystem and the UPSMON job.
3. Type a 2 (Change) next to the UPSMON job and press Enter.
4. The Change J ob (CHGJ OB) display appears. Verify the value of the Run priority
(RUNPTY) parameter.
5. If the value is 10 or less than 10, you do not need to change the run priority. Press
F12 (Cancel).
6. If the value is greater than 10, you should change the run priority to 10 or less
than 10. Higher numbers indicate a lower run priority. A lower run priority may not
allow the UPS monitor to have the required responsiveness. When you are ready,
press Enter.
132
Accessing the UPS monitor menu
The UPS Monitor Menu enables you to access options that are unique to the UPS
monitor. There are multiple ways to access the UPS Monitor Menu.
From the MIMIX Basic Main Menu, do the following:
1. Select option 12 (Work with monitors) and press Enter.
2. The Work with Monitors display appears. Type option 12 (Work with) next to the
entry for the UPSMON and press Enter.
From the MIMIX Intermediate Main Menu, do the following:
1. Select option 13 (Utilities menu) and press Enter.
2. From the MIMIX Utilities Menu, select option 71 (UPS monitor menu) and press
Enter.
You can also access the UPS Monitor menu from a command line. Specify the name
of the MIMIX installation library in the following command and press Enter:
GO installation_library/ MMUPSMENU
Configuring the UPS monitor
133
Configuring the UPS monitor
To configure the UPS monitor for use, do the following:
1. From the UPS Monitor Menu, select option 10 (Change UPS monitor
configuration) and press Enter.
2. The Change UPS Configuration (CHGUPSCFG) display appears. When you are
configuring the UPS monitor for the first time, you should specify all options. If you
are updating an existing configuration, specify only the options you need to
change. Consider the following options:
a. Specify the value to use for the Maximum battery time (min.) prompt. For more
information see Evaluating battery time requirements on page 127
b. At the Preparation Sequence prompts, specify a number to indicate the order
in which each of the preparation functions occurs. The value 1 indicates that
the function is performed first. The value *NO indicates that the function is not
performed. If *NONE is specified for the Failure exit program parameter,
specify *NO for the Run failure exit program prompt.
c. At the Preparation time (min.) prompt, specify a value that will cover all of the
preparation functions you selected. Ensure that the value you specify is also
reflected in the maximum battery time.
d. To automatically start customized processes in the event that the UPS monitor
detects a power failure, specify the name of the Failure exit program and the
library in which it is located.
Note: You must specify to run the failure exit program in the preparation
sequence.
e. Specify the value for the type of power down you want at the Power down
option prompt. The power down options are described on UPS monitor
highlights on page 124.
f. Specify a value for each of the Power down times (min.) prompts. Ensure that
the value you specify is also reflected in the maximum battery time.
3. Press Enter. Additional parameters appear on the display.
4. Specify the following options, as needed:
a. If you specified *CNTRLD for the Power down option, specify the amount of
time, in seconds, in which a controlled end can be performed in the Delay time,
if *CNTRLD prompt. The system allows this amount of time for active
subsystems to perform a controlled end. If the end-of-job routines are not
finished in the specified time, any remaining jobs are ended immediately. If you
specify a large value, the power down may not complete before the power
supply is depleted.
b. Specify the option you want for the Restart after power down prompt. The
value *NO causes the system to end and power down. The system is not
restarted automatically. The value *YES causes the system to end and start
again in unattended mode. If the system is running on utility power, the system
undergoes end of processing and, instead of powering down, the system
134
performs an abbreviated IPL. If the system is running on auxiliary power, the
system powers down. Then, when utility power is restored, the system
performs an automatic IPL if the QPWRRSTIPL system value (automatic IPL
after power restored) is set to 1. The IPL proceeds in an unattended mode.
c. Specify the value you want for the Send initial warning message prompt. The
value *YES sends a message when the system switches to auxiliary power
from the UPS.
d. Specify a delay time, in minutes, for the Warning delay interval prompt. A value
of 0 indicates that no interval warning messages are sent.
e. Specify the value you want for the Send restore message prompt.
f. Specify the value you want for the To user profile prompt.
g. To automatically start customized restore exit programs when the power is
restored, specify the name of the Restore exit program and the library in which
it is located.
h. To have the UPS monitor display an inquiry message that allows the system
operator the possibility of preventing the power down, specify *YES at the
Request operator response prompt. If the operator does not respond to the
message within two minutes, the power down continues.
i. To change the Job description used to submit UPS monitor jobs, specify the
name of the job description you want and the library in which it is located.
5. To accept changes to any of the prompts on the Change UPS Configuration
display, press Enter.
Changing warning message text
135
Changing warning message text
You can change the text of any or all of the warning messages that are sent to users.
To change the text of warning messages sent to users, do the following:
1. From the UPS Monitor Menu, select option 11 (Change UPS messages) and
press Enter.
2. The Change UPS Message (CHGUPSMSG) display appears. Specify the
message type for which you want to modify text and press Enter.
3. The text of the default message appears. The first-level text is the message text.
The second-level text is what appears when the user requests the Help function
on the message. Text must appear within apostrophes (). Use F1 (Help) to
determine additional formatting restrictions for the first- and second-level text
fields.
4. In your message text, you should identify why the message was sent and what
action is expected from the user. If you require user action, you may also want to
indicate the consequences of not taking the requested action. The UPS monitor
appends an eight-character field to the end of the second-level text. This field
includes the current number of minutes remaining in which the UPS power can
run the system. Be sure to allow enough space for this field.
5. When you are ready to accept the changes you made, press Enter.
136
Starting and ending the UPS monitor
The UPS monitor uses the standard interface for starting (option 9) and ending
(option 10) monitors from the Work with Monitors display. Occasionally you may need
to end the UPS monitor. If you do not want to have the UPS monitor control the
system shutdown in the event of a power failure, you need to end the UPS monitor.
You also need to end the UPS monitor when you upgrade your installation of MIMIX
Monitor.
Testing the UPS configuration
137
Testing the UPS configuration
When you test the configuration for the first time, consider testing the configuration
during off-peak hours.
To test that the UPS monitor and the UPS are correctly configured; do the following:
1. Display the status of the UPS monitor. Refer to Displaying status for the UPS
monitor on page 141.
2. Unplug the UPS from the power source.
3. Press F5 (Refresh) on UPS Monitor Status display. The operational status should
change to running and the power status should update the percentage of power
that is available.
4. Plug the UPS into the power source before all the battery power is used.
DANGER
Up to 240 V ac is present at the power source. To prevent a
possible electrical shock from touching two surfaces with
different electrical grounds, use one hand, when possible, to
connect or disconnect cables.
An electrical outlet that is not correctly wired could place hazardous
voltage on metal parts of the system or products attached to the
system. It is the customers responsibility to ensure that the outlet is
correctly wired and grounded to prevent an electrical shock.
138
Updating the available UPS power
The system cannot indicate whether the UPS is fully charged. You need to provide the
UPS monitor with an estimate of the percentage of power available from the UPS.
The UPS monitor uses this value as the base from which all other power availability
estimates are based. If the percentage of available UPS power, as defined to the UPS
monitor, is below 100% when the monitor is started, the MIMIX message queues and
log are notified.
You should update the percentage of power available from the UPS in the following
situations:
During the initial configuration of the UPS monitor
After the UPS battery has recharged itself, either after restoring power or after
simulating a power change.
If you do not update the percentage of power available from the UPS, the next power
down may start earlier than necessary because the UPS monitor is using the value
remaining from the previous power down.
Do the following to update the UPS availability percentage:
1. Determine the percent of charge for the UPS battery by looking at the indicators
on the UPS.
2. When the battery is fully charged, select option 12 (Update UPS availability) from
the UPS Monitor Menu and press Enter.
3. The Update UPS Power Availability display appears. Type the appropriate
number for the New percentage of full power available prompt and press Enter.
Note: To automate this change as part of a program, you can use the Change
UPS Availability (CHGUPSAVL) command.
Testing power changes
139
Testing power changes
You can simulate power changes to test the operation of the UPS monitor and the
processes used to shut down the system. Both power failure and power restore
operations can be simulated with the Test Power Change (TSTPWRCHG) command.
It is possible to power down the system with this test.
Do the following to simulate a power failure and power restore sequence:
1. From the UPS Monitor Menu, select option 3 (Display UPS monitor status) and
press Enter.
2. The UPS Monitor Status display appears. Make a note of the value shown for
Approximate time remaining, then press F12 (Cancel).
________________Approximate Time Remaining
3. From the UPS Monitor Menu, select option 10 (Change UPS monitor
configuration) and press Enter
4. The Change UPS Configuration display appears. Make a note of the following
information:
a. Which of the functions of the Preparation sequence parameter are selected:
Send final message _____________
Hold job queues ______________
Run failure exit program ______________
b. The time specified for preparation: _____________
c. Which power down option is specified: ____________
d. The power down time for the specified power down option: _________
e. The value specified for the Restart after power down prompt _____
5. Add the values for the preparation time and the power down time for the selected
power down option. (Step 4b +Step 4d =____). Compare this value to the
approximate time remaining (Step 2). The approximate time remaining should
exceed the sum of the shutdown sequence and selected power down option. Do
not continue with the power change test if the approximate time remaining for the
UPS is not sufficient to complete the preparation sequence functions selected and
the specified power down option.
6. On the Change UPS Configuration display, do the following:
a. Press F9 (All parameters) then press Page Down to see additional options on
the second display.
b. Verify that Request operator response prompt is set to *YES. If necessary,
change the value to *YES and press Enter. This will ensure that an inquiry
message is sent to the system operator before the power down command is
processed, allowing you the opportunity to stop the power down. You can reset
this value after the test completes if you do not want operator intervention
during a real power down.
140
7. From the UPS Monitor Menu, select option 20 (Test power failure) and press
Enter.
8. You will see status messages in the system operator message queue
(QSYSOPR). You will also see either break messages or messages in your
message queue, depending on the value of the configuration option To user
profile.
9. You can stop the power failure test at any time by selecting option 21 (Test power
restore) from the UPS Monitor Menu and pressing Enter.
Note: Starting the power restore test stops the power failure test. If you wait to
start the power restore test until after the final warning message is sent,
the restore request may not be received, causing the system to power
down.
10. If the Request operator response prompt was set to *YES you will see an inquiry
message. You have two minutes in which to respond to the inquiry message. A
response of N (No) prevents the power down and ends the UPS monitor.
Note: If you do not respond within two minutes or if you respond with Y (Yes), the
system will be powered down.
11. After power is restored successfully or after the restore power test completes,
ensure that the UPS battery is recharged to 100%.
12. Update the new percentage of full available power using the instructions in
Updating the available UPS power on page 138.
13. If necessary, restart the UPS monitor.
Displaying status for the UPS monitor
141
Displaying status for the UPS monitor
From the UPS Monitor Status display, you can quickly determine the status of the
UPS monitor and the status of UPS power. You can also determine whether the
system is running on UPS power, when UPS power was activated, what type of power
down will be performed if needed, and the expected start time for power down
preparation activities.
You can display the status of the UPS monitor in several ways. You can use standard
option (15) from the Work with Monitors display, or you can use the following
procedure or fast path command. The results are the same for all methods.
Do the following to display status of the UPS monitor:
1. Do one of the following:
If you are already on the Work with Monitors display, type option 15 (Status)
next to the UPSMON entry and press Enter.
Use any of the procedures described in Accessing the UPS monitor menu on
page 132. Then, from the UPS Monitor Menu, select option 3 (Display UPS
monitor status) and press Enter.
2. The UPS Monitor Status display appears. When you verify the configuration of the
UPS monitor, you should see that the UPS monitor is active, the battery should be
charged to 100%, and the UPS operational status should be on standby.
3. To set this display to automatically refresh the status, type a number between 5
and 999, specified in minutes, in the Auto refresh prompt and press F9 (Automatic
refresh).
Figure 9. UPS monitor status.
In Figure 9 the UPS battery is not charged to 100%.
SYSTEMA UPS Moni t or St at us 02/ 19/ 99
19: 23: 51
= I nact i ve/ Runni ng Aut o r ef r esh ___
= Act i ve/ St andby
= Unknown UPS Power St at us
Maxi mumt i me f or UPS power : 60 ( Mi nut es)
Amount of t i me used . . . . : 45
Moni t or ======
Act i ve Appr oxi mat e t i me r emai ni ng . : 15
UPS Oper at i onal St at us
UPS st at us . . . . . . . . . . . . : St andby
Cur r ent st at us . . . . . . . . . . :
Power down opt i on sel ect ed . . . . : PWRDWNSYS ( *CNTRLD)
DATE TI ME .
Act i vat i on . . . . . . . . . . . . :
St ar t of shut down sequence . . . :
Appr oxi mat e st ar t of power down . . :
F3=Exi t F5=Ref r esh F9=Aut omat i c r ef r esh F12=Cancel
142
On this display the following colors are assigned to these statuses:
Red (Inactive/Running). Red indicates that the UPS monitor is inactive, that the UPS
battery is running the system, or that the UPS power is not fully charged.
Blue (Active/Standby). Blue indicates that the UPS monitor is active, that the UPS is
on standby, or that power is fully available.
White (Unknown). White indicates that the status of the UPS monitor or of the UPS
could not be determined. The UPS Operational Status box and the UPS Power Status
box are white when the monitor is inactive.
For more information about the status indicators, press F1 (Help).
Changing the UPS subsystem
143
Changing the UPS subsystem
The UPS monitor runs in its own subsystem, MIMIXUPS. If you want to change the
UPS monitor (UPSMON to the controlling subsystem, do the following:
1. End the UPS monitor using Ending a monitor on page 43.
2. End the MIMIXUPS subsystem by typing the command ENDSBS
SBS(MIMIXUPS) OPTION(*IMMED) and pressing Enter.
3. Use the ADDJ OBQE and ADDRTGE commands to create entries for the UPS
monitor under the controlling subsystem. Specify the appropriate sequence
number.
Note: In the following examples, the sequence number 10 is used and the
controlling subsystem is QBASE. To determine the controlling subsystem,
display the system value QCTLSBSD.
For example:
ADDJ OBQE SBSD( *LI BL/ QBASE) J OBQ( MI MI XQGPL/ MI MI XUPS)
MAXACT( 1) SEQNBR( 10)
ADDRTGE SBSD( *LI BL/ QBASE) SEQNBR( 10) CMPVAL( MI MI XUPS)
PGM( QSYS/ QCMD) CLS( MI MI XQGPL/ MI MI XUPS)
4. Start the UPS monitor using Starting a monitor on page 42.
5. Verify that the UPS monitor is running under the controlling subsystem by using
the WRKACTJ OB command.
Removing the UPS monitor from the controlling subsystem
To remove the UPS monitor from the controlling subsystem, do the following:
Remove the job queue entry and the routing entry from the controlling subsystem
using the following commands:
RMVJ OBQE SBSD( *LI BL/ QBASE) J OBQ( MI MI XQGPL/ MI MI XUPS)
RMVRTGE SBSD( *LI BL/ QBASE) SEQNBR( 10)
Note: In this example, QBASE is the controlling subsystem and sequence number
10 is the sequence number for the UPS monitor.
Programming for monitors
144
CHAPTER 8 Programming for monitors
This section describes the programming requirements for condition programs, event
programs, and interface exit programs that are called by monitors. This section also
describes the application programming interface (API) provided with MIMIX Monitor.
This section describes the required parameters and data formats for condition
programs, event programs, and interface exit programs. If you need to have your
condition program or event program retrieve information from MIMIX Monitor, you can
include calls to the MIMIX Monitor User Access API.
A header file is available for inclusion in C/400 programs and resides in the product
library in source file H. The header file name is MMUSRACCS and contains #define
statements for each event class and for each MIMIX Monitor User Access
(MMUSRACCS) API format, data structures for each format, and data structures for
the returned monitor information for each event class. Additionally a #program
statement is defined for the program interface call to the MMUSRACCS API.
Adding messages to the MIMIX message log
145
Adding messages to the MIMIX message log
The Add Message Log Entry (ADDMSGLOGE) command allows you to add an entry
to the MIMIX message log. This is helpful when you want to include messages from
your automation programs into the MIMIX message log for easier tracking. To see the
parameters for this command, type the command and press F4 (Prompt). Help text for
the parameters describe the options available.
The message is written to the message log file. The message is also sent to the
primary and secondary messages queues if the message meets the filter criteria for
those queues. The message can also be sent to a program message queue.
Messages generated on a network system will be automatically sent to the
management system. However, messages generated on a management system may
not be sent to any network systems. The system manager on the management
system does not send messages to network systems when it cannot determine which
system should receive the message.
146
What to include in your programs
The content of your user-defined programs is a key component of an effective
monitor. What you intend to accomplish with a monitor will determine what type of
information you need to include. This information describes content for common
monitoring scenarios.
Programming for switching
For switching operations, determine how much of the switching operation you want to
automate via programming or if you want to perform part of the switch manually.
The event program defined in the switch definition and called by the group monitor
controls the switch. To automate the switch, your program should include the following
commands:
Set Switch Source (SETSWTSRC)
Start Switch Screen (STRSWTSCN)
Change Switch Definition (CHGSWTDFN)--to change the switch logon message
If you are planning on using a switch to change the direction of replication for MIMIX,
you need to include the MIMIX commands for switching the data group. Refer to the
MIMIX Operations book for information about switching data groups.
For additional information on switches refer to Working with switch definitions on
page 79.
Programming for the UPS monitor
The UPS monitor allows for user-defined programming through the use of a failure
exit program and a restore exit program. The use of each program is optional,
however you can use them to enhance the effectiveness of the UPS monitor in the
event that a loss of power causes the system to power down. There are no
parameters for the failure exit program and the restore exit program.
In the failure exit program, you may want to include commands to shut down or
quiesce your applications in an orderly manner. If you use the restore exit program,
you may want to include your startup program.
For more information about monitor functions refer to Working with the UPS monitor
on page 123.
Interface exit program
147
Interface exit program
If you write an interface exit program to perform additional processing of objects
associated with the monitor definition, you must include the following parameters.
Required parameters
Monitor
INPUT; CHAR(10)
This is the name of the monitor with which this program is associated.
Event class
INPUT; CHAR(10)
The type of event class for the monitor. Possible values are.
Option
INPUT; CHAR(4)
Identifies the action that called the interface exit program for the monitor. The exit pro-
gram was called either by a command or by an option on the Work with Monitors dis-
play.
*MSGQ The monitor is triggered when a specified message queue receives a
predetermined message.
*INTERVAL The monitor is triggered when the specified time interval has passed.
*TIME The monitor is triggered at a specified time. Time can by specified either by
scheduled date or scheduled day.
*J RN The monitor is triggered when the specified journal receives a
predetermined journal entry code or entry type.
*GROUP The monitor is triggered when the last monitor that belongs to the group has
a status of FAILED or FAILED/ACT.
0100 The exit program was called either by option 1=Create or by the Create
Monitor Object (CRTMONOBJ ) command.
0200 The exit program was called either by option 2=Change or by the Change
Monitor Object (CHGMONOBJ ) command.
0300 The exit program was called either by option 3=Copy or by the Copy Monitor
Object (CPYMONOBJ ) command.
0400 The exit program was called either by option 4=Delete or by the Delete
Monitor Object (DLTMONOBJ ) command.
0500 The exit program was called either by option 5=Display or by the Display
Monitor Object (DSPMONOBJ ) command with OUTPUT(*) specified.
0600 The exit program was called either by option 6=Print or by the Display
Monitor Object (DSPMONOBJ ) command with OUTPUT(*PRINT) specified.
0700 The exit program was called either by option 7=Rename or by the Rename
Monitor Object (RNMMONOBJ ) command.
0900 The exit program was called either by option 9=Start or by the Start Monitor
(STRMON) command.
1000 The exit program was called either by option 10=End or by the End Monitor
(ENDMON) command.
148
Note: Option 20, CHGMONSTS STATUS(*ENABLED) command, and option 21,
CHGMONSTS STATUS(*DISABLED), do not call the interface exit program.
Pre- or post-call
INPUT; CHAR (1)
Indicates whether the interface exit program is being called before or after the
requested action.
Return codes
OUTPUT; CHAR (1)
Indicates whether the interface exit program ran successfully. The following are valid
return codes:
Exception ID
OUTPUT; CHAR(7)
A user-defined message ID that is sent to the message log. The exception ID should
provide meaningful information to the person who maintains the monitor. The monitor
does not use the exception ID.
1200 The exit program was called either by option 12=Work with or by the Work
with Monitor Information (WRKMONINF) command. When this option is
used, the interface exit program is called only as a pre-process program
before the requested action.
1300 The exit program was called either by option 13=Hold or by the Hold Monitor
(HLDMON) command.
1400 The exit program was called either by option 14=Release or by the Release
Monitor (RLSMON) command.
1500 The exit program was called either by option 15=Status or by the Display
Monitor Status (DSPMONSTS) command with OUTPUT(*) specified.
1550 The exit program was called either by option 15=Status and prompting to
change OUTPUT to *PRINT, or by the Display Monitor Status
(DSPMONSTS) command with OUTPUT(*PRINT) specified.
1800 The exit program was called either by option 18=Run or by the Run Monitor
(RUNMON) command.
3900 The exit program was called either by option 39=Export or by the Export
Monitor Object (EXPMONOBJ ) command.
4000 The exit program was called by the Import Monitor Object (IMPMONOBJ )
command.
0 The interface exit program is called in pre-processing before the requested
command is processed.
1 The interface exit program is called in post-processing after the requested
command is processed.
0 The interface exit program ran successfully.
1 The interface exit program did not complete successfully. Do not continue to
process the requested command. This value is only evaluated when the exit
program runs in pre-processing. However, it is recommended that the
appropriate value be returned for both pre- and post-exit calls to enable
potential future evaluation.
Condition program
149
Condition program
If you write a condition program to do additional condition checking, you must include
the following parameters.
Required parameters
Monitor
INPUT; CHAR(10)
The name of the monitor that triggered this program call.
Event class
INPUT; CHAR(10)
The type of event class for the monitor. Possible values are:
Detailed information
INPUT; CHAR(*)
Provides the predefined condition information that caused the condition program to be
called. The value of the monitor type parameter determines the content of this
parameter. For a description of the format of the detailed information for each monitor
type, see Additional data structures on page 156.
Return code
OUTPUT; CHAR(1)
The following are valid return codes:
If a value other than 0 is specified for the Retry attempts (RETRY) parameter of the
monitor definition, the condition program will be called multiple times and the condi-
tion must be met for the number of retry attempts before the event program is called.
If the condition program does not return 0 (conditions have been met) the retry coun-
ter will be reset to try again for the specified number of times.
*MSGQ The monitor is triggered when a specified message queue receives a
predetermined message.
*INTERVAL The monitor is triggered when the specified time interval has passed.
*TIME The monitor is triggered at a specified time. Time can by specified either by
scheduled date or scheduled day.
*J RN The monitor is triggered when the specified journal receives a
predetermined journal entry code and entry type.
*GROUP The monitor is triggered when the last monitor that belongs to the group has
a status of FAILED or FAILED/ACT.
0 The condition program completed successfully. The conditions have been
met. The event program is called, if one exists
1 The condition program failed or the condition was not met. The event
program is not called and the monitor remains active.
For group monitors, the condition program defined to the group monitor
failed or the condition was not met. The status of the group monitor
changes to inactive.
150
Event program
If you write an event program to process the event that occurred, you must include the
following parameters.
Required parameters
Monitor
INPUT; CHAR(10)
The name of the monitor that triggered this program call.
Event class
INPUT; CHAR(10)
The type of event class for the monitor. Possible values are:
Detailed information
INPUT; CHAR(*)
Provides the predefined condition information that caused the event program to be
called. The value of the monitor type parameter determines the content of this
parameter. For a description of the format of the detailed information for each monitor
type see Additional data structures on page 156.
Return code
OUTPUT; CHAR(1)
The following are valid return codes:
*MSGQ The monitor is triggered when a specified message queue receives a
predetermined message.
*INTERVAL The monitor is triggered when the specified time interval has passed.
*TIME The monitor is triggered at a specified time. Time can by specified either by
scheduled date or scheduled day.
*J RN The monitor is triggered when the specified journal receives a
predetermined journal entry code and entry type.
*GROUP The monitor is triggered when the last monitor that belongs to the group has
a status of FAILED or FAILED/ACT.
0 The event program completed successfully. The monitor remains active.
For a group monitor, the associated event program completed successfully.
Status for the group monitor changes to INACTIVE.
1 The event program failed and the monitor remains active. The status of the
monitor will change to FAILED/ACT. If the monitor participates in a group,
the group monitor is active, and this monitor is the last monitor in a group to
go to a failed status (FAILED or FAILED/ACT), the monitor may trigger the
group monitor to run its condition and event program.
If the event program is defined to a group monitor, the event program failed.
Status of the group monitor is changed to FAILED.
2 The event program failed and the monitor does not remain active. The
status of the monitor is changed to FAILED.
Event program
151
Exception ID
OUTPUT; CHAR(7)
A user-defined message ID that is sent to the message log. The exception ID should
provide meaningful information to the person who maintains the monitor to determine
what may have occurred in the event program. The monitor does not use the excep-
tion ID.
152
MIMIX Monitor User Access API
The MIMIX Monitor User Access (MMUSRACCS) API can be called from condition
and event programs to retrieve information from MIMIX Monitor. The MMUSRACCS
API is the only way in which a monitor can retrieve monitor specific information from a
program.
MMUSRACCS member
MIMIX Monitor ships a header (H) file which includes the MMUSRACCS member. You
can use this file in a C program to define the structures returned by the MMUSRACCS
API. The include file is in the product installation library.
If you create a C program to retrieve the information about a monitor object you can
include the MMUSRACCS include file to define the structures returned by the
MMUSRACCS API.
Authorities and locks
Service program lock:
*SHRRD
Service program authority:
*USE
Required parameters
Monitor information
OUTPUT; CHAR(*)
This is the variable in which to receive the monitor information that is returned. The
information is returned in the format specified by the format name parameter. The
amount of data returned is determined by the value of the length of monitor informa-
tion parameter. Users need to allocate space large enough for this parameter.
Length of monitor information
INPUT: BINARY(4)
The size of the area to contain the monitor information, specified in bytes. The mini-
mum size that can be specified is 8 bytes.
This parameter must specify the size of the variable you use for the monitor informa-
tion parameter. If the size specified is longer than the length of the data actually
returned other parts of storage could be overwritten when this API returns the infor-
mation.
Format name
INPUT; CHAR(7)
This is the format in which to return the monitor information. The supported format
names are:
MON0100 Returns basic information. See MON0100 format on page 153. for details.
MIMIX Monitor User Access API
153
Monitor name
INPUT;CHAR(10)
This is the name of the monitor for which information is being requested.
This parameter is not currently used.
Monitor type
INPUT;CHAR(10
The type of event class of the monitor specified in the Monitor name parameter. Pos-
sible values are:
Error code
INPUT/OUTPUT;CHAR(*)
This is the structure in which to return error information. If this parameter is omitted,
null, or if the bytes provided are less than or equal to 8, escape messages are sent to
the calling program.
For more information about error code structures, refer to IBM API Programming
information.
MON0100 format
This format is used in the Format name parameter.
MON0200 Returns all monitor status information from the last call to the event program.
See MON0200 format on page 154 for details.
*MSG The monitor is triggered when a specified message queue receives a
predetermined message.
*INTERVAL The monitor is triggered when the specified time interval has passed.
*TIME The monitor is triggered at a specified time. Time can by specified either by
scheduled date or scheduled day.
*J RN The monitor is triggered when the specified journal receives a
predetermined journal entry code or entry type.
*GROUP The monitor is triggered when the last monitor that belongs to the group has
a status of FAILED or FAILED/ACT.
Table 13. MON0100 format
Offset
Dec Hex Type Field
0 0 BINARY(4) Bytes returned
4 4 BINARY(4) Bytes available
8 8 CHAR(1) Event program successful flag
9 9 CHAR(1) Shutdown set flag
10 A CHAR(10) Monitor status
154
MON0200 format
This format is used in the Format name parameter.
Field descriptions
Bytes available. This is the length of all available information that could be returned
for the selected format. The value of this field can be greater than the length specified
in the Length of monitor information parameter. If the length of this field is greater than
the value specified in the Length of monitor information parameter, the data returned
in the monitor information parameter is truncated to the length of this field.
Bytes provided. The number of bytes that the calling application provides for the
error code. If the API caller is using format ERRC0100, the bytes provided must be
0,8, or more than 8. If more than 32 783 bytes (32KB for exception data plus 16 bytes
for other fields) are specified, it is not an error, but only 32 767 bytes (32KB) can be
returned in the exception data.
Bytes returned. This is the length of all available information that is returned in the
specified format. The value of this field is always less than or equal to the value of the
Length of monitor information parameter. If the value is less than the value of the
Length of monitor information parameter, the extra space in the monitor information
parameter is unchanged.
The Bytes returned value is also always less than or equal to the value of the Bytes
available field, with one exception. The exception occurs when you attempt to receive
information about a monitor that does not exist. When a monitor does not exist, the
Bytes returned field is 8 and the Bytes available field is 0. The remaining fields are
unchanged and contain whatever value was already stored.
Table 14. MON0200 format
Offset
Dec Hex Type Field
0 0 BINARY(4) Bytes returned
4 4 BINARY(4) Bytes available
8 8 CHAR(1) Event program successful flag
9 9 CHAR(1) Shutdown set flag
10 A CHAR(10) Monitor status
20 14 CHAR(20) Reserved
40 28 CHAR(*) Monitor detailed information
The monitor type determines the structure of
this field. See Additional data structures on
page 156.
MIMIX Monitor User Access API
155
Event program successful flag. This flag indicates the success of the event
program for this monitor on the last time the program was run. Possible values are:
Exception data. A variable-length character field that contains the insert data
associated with the exception ID.
Exception ID. The identifier for the message for the error condition.
Monitor detail information. This is the detailed information for this monitor. The
structure of this information varies for each event class of monitor. For detailed
information, see Additional data structures on page 156.
Monitor status. Indicates the status of the monitor at the time the API was called.
Possible values are:
Reserved. This field is reserved for future use or enhancement.
Shutdown flag. This flag indicates whether or not this monitor has shutdown or is
being shutdown. Possible values are:
Y The last time the event program ran, it ran successfully and returned a value
of 0.
N The last time the event program ran, it ran unsuccessfully and returned a
value other than 0.
STARTING The monitor job is starting or is in the process of being started.
ACTIVE The monitor is currently active.
SCHEDULED The monitor is scheduled. A job scheduled entry exists for the monitor in the
IBM i job scheduler. This value only applies to *TIME monitors.
HELD The monitor is currently being held.
INACTIVE The monitor is not currently active.
ENDING The monitor job is ending or is in the process of becoming inactive.
DISABLED The monitor has been disabled. If the monitor belongs to a group it will not
participate in the triggering of the group.
FAILED/ACT The monitor has failed but remains active. The event program for the
monitor requested that the monitor status be set to failed but the monitor
remains active. If the monitor belongs to a group it will participate in the
decision to trigger the group.
FAILED The monitor has failed. Either the event program for the monitor requested
that the monitor be ended and the status set to failed, an unexpected error
occurred in the monitor, or the maximum number of restarts have been
attempted. If the monitor belongs to a group it will participate in the decision
to trigger the group.
Y The monitor has been instructed to shutdown. The monitor is either inactive,
or is in the process of shutting down.
N The monitor has not been instructed to shutdown.
156
Additional data structures
This information shows the data formats used in programming for a monitor. The
fields for all formats are described in Field descriptions on page 154.
Detail information format
Each type of event class has its own structure for detailed information. The detailed
information format is used in the following places:
Condition program: detailed information parameter
Event program: detailed information parameter
MMUSRACCS API: format name parameter, monitor detailed information field
used in format MON0200.Message Queue (*MSGQ)
Message Queue (*MSGQ)
The following information is returned if you specified *MSGQ for the Monitor type
parameter in the MIMIX Monitor User Access (MMUSRACCS) API.
Table 15. Message queue (*MSGQ) information
Offset
Dec Hex Type Field
0 0 CHAR(20) Message queue and library names
20 14 CHAR(7) Message ID
27 1B CHAR(2) Message type
29 1D CHAR(4) Message key
33 21 CHAR(3) Reserved
36 24 BINARY(4) Message data length
40 28 CHAR(256) Message data
296 128 BINARY(4) Severity
300 12C CHAR(20) Message file and library
320 140 CHAR(10) Sending job name
330 14A CHAR(10) Sending user profile
340 154 CHAR(6) Sending job number
346 15A CHAR(12) Sending program name
358 166 CHAR(10) Receiving program name
368 170 CHAR(7) Sending date
375 177 CHAR(6) Sending time
Additional data structures
157
Interval (*INTERVAL)
The following information is returned if you specified *INTERVAL for the Monitor type
parameter in the MIMIX Monitor User Access (MMUSRACCS) API.
Journal (*JRN)
The following information is returned if you specified *J RN for the Monitor type
parameter in the MIMIX Monitor User Access (MMUSRACCS) API.
381 17D CHAR(3) Reserved
384 180 CHAR(10) Monitor job name
394 18A CHAR(10) Monitor user profile
404 194 CHAR(6) Monitor job number
410 19A CHAR(70) Reserved
Table 15. Message queue (*MSGQ) information
Offset
Table 16. Interval (*INTERVAL) information
Offset
Dec Hex Type Field
0 0 CHAR(10) Monitor job name
10 A CHAR(10) Monitor user name
20 14 CHAR(6) Monitor job number
26 1A BINARY(4) Communications
flag
30 1E CHAR(10) Communications
subclass
40 28 CHAR(264) Reserved
Table 17. J ournal (*J RN) information
Offset
Dec Hex Type Field
0 0 CHAR(20) J ournal and library names
20 14 CHAR(170) J ournal header information
190 BE CHAR(256) J ournal entry data
446 1BE CHAR(10) Monitor job name
456 1C8 CHAR(10) Monitor user profile
158
Time (*TIME)
The following information is returned if you specified *TIME for the Monitor type
parameter in the MIMIX Monitor User Access (MMUSRACCS) API.
Group (*GROUP)
The following information is returned if you specified *GROUP for the Monitor type
parameter in the MIMIX Monitor User Access (MMUSRACCS) API.
466 1C2 CHAR(6) Monitor job number
472 1D8 CHAR(20) Last sequence number
492 1EC CHAR(20) J ournal receiver of last sequence number
processed
512 200 CHAR(20) Previous journal receiver
532 214 CHAR(20) Current journal receiver
552 228 CHAR(1) Abnormal end of monitor
553 229 CHAR(1) Process J NR entry
554 22A CHAR(1) Process J PR entry
555 22B CHAR(1) Process J codes
556 22C CHAR(206) Reserved
Table 17. J ournal (*J RN) information
Offset
Table 18. Time (*TIME) information
Offset
Dec Hex Type Field
0 0 CHAR(6) J ob schedule entry number
6 6 CHAR(2) Reserved
8 8 BINARY(4) Frequency once flag
12 C CHAR(244) Reserved
Table 19. Group (*GROUP) information
Offset
Dec Hex Type Field
0 0 CHAR(10) Monitor job name
10 A CHAR(10) Monitor user profile
Additional data structures
159
Error code structure
This error code structure is used in the MMUSRACCS API for the Error code
parameter.
20 14 CHAR(6) Monitor job number
26 1A BINARY(4) Run group monitor
30 1E BINARY(4) Group processed
34 22 CHAR(270) Reserved
Table 19. Group (*GROUP) information
Offset
Table 20. MMUSRACCS API error code structures
Offset
Dec Hex Use Type Field
0 0 Input BINARY(4) Bytes provided
4 4 Output BINARY(4) Bytes available
8 8 Output CHAR(7) Exception ID
15 F Output CHAR(1) Reserved
16 10 Output CHAR(*) Exception data
160
Field descriptions
The field descriptions described in this information are used in the following places:
Condition program: detailed information parameter
Event program: detailed information parameter
MMUSRACCS API: format name parameter, monitor detailed information field
used in format MON0200.
Communications flag: Indicates the success of the last communications check. The
possible values and their meanings are:
Communications subclass: The subclass of communications being checked. The
possible values are:
*NONE - no subclass
*CFG - configuration
*TCP - TCP/IP
*SYSDFN - system definition
*TFRDFN - transfer definition
Job schedule entry number: The entry number assigned by the IBM i job scheduler.
Journal and library names: The name of the journal to monitor and the library in
which the journal is located. The first ten characters are the journal name and the
last ten characters are the library name.
Journal entry data: The first 256 bytes of the journal entry data for the transaction
that was received by the monitor. If you need to retrieve all of the data from the
transaction, use the Retrieve J ournal Entry (RTVJ RNE) command and specify the
RTNJ RNE parameter.
Journal header information: The fixed-length portion of the type 4 journal entry. For
more information, refer the J ournal Entry Information appendix in the IBM book
Backup and Recovery - Advanced.
Journal receiver of last sequence number processed: The qualified name of the
journal receiver that received the last processed journal entry from which the monitor
is currently receiving journal transactions.
Last sequence number processed: The sequence number of the last received
transaction that was processed by the monitor. Not all transactions are received.
Message data: The substitution data for the message data fields (variables) for the
message received by the monitor.
Message data length: Indicates the length of the substitution data returned in the
message data field.
0 False
1 True
Field descriptions
161
Message file and library: The source of the message ID that was received. The first
ten characters indicate the name of the message file that contains the message ID.
The last ten characters indicate the name of the library that contains the message file.
Because the library can contain override instructions, the library name is not
necessarily the library in which the message file actually resides.
Message ID: The identifying code of the message that was received.
Message key: The key to the message that was received. This field can be used to
retrieve the message if it has not been removed by another process that is not part of
MIMIX Monitor.
Message queue and library names: The name of the message queue to monitor
and the library in which the message queue is located. The first ten characters
indicate the message queue name and the last ten characters indicate the library
name.
Message type: The message type of the message that was received. The possible
values and their meanings are:
Monitor job name: The name of the monitor job.
Monitor job number: The job number associated with the monitor job.
Monitor user profile: The name of the user profile that submitted the monitor job.
Receiving program name: The name of the program that received the message.
Reserved: This field is ignored.
Table 21. Message types
Value Message type
01 Completion (*COMP)
02 Diagnostic (*DIAG)
04 Information (*INFO)
05 Inquiry (*INQ)
06 Senders copy (*COPY)
08 Request (*RQS)
10 Request with prompting (*RQS)
14 Notify (*NOTIFY)
15 Escape (*ESCAPE)
21 Reply, not validity checked (*RPY)
22 Reply, validity checked (*RPY)
23 Reply, message default used (*RPY)
24 Reply, system default used (*RPY)
25 Reply, from system reply list (*RPY)
162
Sending date: The date on which the message was sent. The date is specified in
CYYMMDD format where Country, YY=year, MM=month, and DD=day.
Sending job name: The name of the job that sent the message ID to the message
queue.
Sending job number: The job number associated with the job that sent the message
ID to the message queue.
Sending program name: The name of the program that sent the message or the
name of the ILE program that contains the procedure that sent the message. When
the name of the program is known, the 10-character program name is returned left-
justified in the field and the final two characters contain blanks. In certain conditions
when the name of the program that sent the message is not known, this field contains
the 6-byte hexadecimal address of the program converted into 12 displayable
characters.
Sending time: The time at which the message was sent. The time is specified in
HHMMSS format where HH=hours MM=minutes and SS=seconds.
Sending user profile: The user profile used to submit the job that sent the message
ID to the message queue.
Severity: The severity of the received message. Possible values range from 0 to 99.
Monitor program examples
163
Monitor program examples
The following is an example of how various programs called by one monitor interact.
Three example programs illustrate the operation of a message queue monitor. The
message queue monitor is set up to monitor the QSYSOPR message queue for
message ID CPI591A (Controller varied off or not recognized by local system). An
interface exit program verifies that the line is active before starting the monitor. When
the monitor receives message ID CPI591A, the condition program verifies that the line
is active. The event program attempts to vary on the controller.
Note: The examples in this section are provided on an as is basis.
Interface exit program example
This interface exit program is used by a message queue monitor that monitors the
QSECOFR message queue for message ID CPI591A (Controller varied off or not
recognized by local system). This exit program is called before and after an option is
164
taken on the monitor and every time an option is taken. This program only takes
action on a pre-processing call for the option to start the monitor (option 9).
Condition program example
This condition program is used by a message queue monitor that monitors the
QSYSOPR message queue for message ID CPI591A (Controller varied off or not
recognized by local system). When this message arrives on the QSYSOPR message
queue, this condition program is called to verify that the line is active. If the line is
active the event program is called. Otherwise, the condition program tells the monitor
Table 22. Interface exit program example
PGM PARM( &MONI TOR &EVTCLS &CMDOPT &PREPOST &RTNCOD &EXCPTI D)
/ *********************************************************************/
/ * Par amet er s */
/ *********************************************************************/
DCL &MONI TOR *CHAR 10 / * Moni t or name */
DCL &EVTCLS *CHAR 10 / * Event cl ass */
DCL &CMDOPT *CHAR 4 / * Char act er r epr esent at i on of opt i on */
DCL &PREPOST *CHAR 1 / * Pr e or post opt i on cal l - 0=pr e, 1=post */
DCL &RTNCOD *CHAR 1 / * Ret ur n code - 0=cont i nue wi t h opt i on */
/ * 1=do not cont i nue wi t h */
/ * opt i on */
DCL &EXCPTI D *CHAR 7 / * Except i on I D f or hi st or y l og */
/ *********************************************************************/
/ * Local var i abl es */
/ *********************************************************************/
DCL &STATUS *DEC LEN( 5 0)

CHGVAR &RTNCOD VALUE( ' 0' ) / * ' 0' =Cont i nue wi t h r equest */
/ *********************************************************************/
/ * I f t hi s i s a pr e- pr ocessi ng cal l f or t he st ar t opt i on t hen ver i f y */
/ * t hat t he l i ne i s ACTI VE. I f i t i sn' t t hen don' t st ar t t he */
/ * moni t or . */
/ *********************************************************************/
I F ( ( &PREPOST *EQ ' 0' ) *AND ( &CMDOPT *EQ ' 0900' ) ) THEN( DO)
RTVCFGSTS CFGD( TRNLI NE) CFGTYPE( *LI N) STSCDE( &STATUS)
I F ( &STATUS *EQ 60) THEN( DO)
CHGVAR &RTNCOD VALUE( ' 1' ) / * Do not st ar t moni t or */
CHGVAR &EXCPTI D VALUE( ' MSG0001' )
ENDDO
ENDDO
Monitor program examples
165
to continue. Refer to Additional data structures on page 156 for information about
the DTLINFO parameter.
Event program example
A message queue monitor that monitors the QSECOFR message queue for message
ID CPI591A uses this event program. This event program is called if the message
arrives and the line is active. The event program attempts to vary on the controller for
Table 23. Condition program example
PGM PARM( &MONI TOR &EVTCLS &DTLI NFO &RTNCOD)
/ *********************************************************************/
/ * Par amet er s */
/ *********************************************************************/
DCL &MONI TOR *CHAR 10 / * Moni t or name */
DCL &EVTCLS *CHAR 10 / * Event cl ass */
DCL &DTLI NFO *CHAR 752 / * Det ai l i nf or mat i on based on event cl ass */
DCL &RTNCOD *CHAR 1 / * Ret ur n code - 0=cal l event pr ogr am */
/ * 1=I f gr oup moni t or , pr ogr am*/
/ * f ai l ed, moni t or st at us i s */
/ * I NACTI VE. Ot her wi se, */
/ * cont i nue t o moni t or , do */
/ * not cal l event pr ogr am */
/ *********************************************************************/
/ * Local var i abl es */
/ *********************************************************************/
DCL &MSGI D *CHAR 7
DCL &STATUS *DEC LEN( 5 0)

/ * Set t he r et ur n code t o 1 t o def aul t t o not cal l t he event pr ogr am*/
CHGVAR &RTNCOD VALUE( ' 1' )

/ * I f t he event cl ass i s *MSGQ t hen get t he message I D t hat caused */
/ * t he condi t i on pr ogr amt o be cal l ed f r omt he det ai l i nf or mat i on. */
I F ( &EVTCLS *EQ ' *MSGQ ' ) THEN( DO)
CHGVAR &MSGI D VALUE( %SST( &DTLI NFO 21 7) )

/ * I f t he message I D i s CPI 591A t hen ver i f y t hat t he l i ne i s */
/ * act i ve ( STATUS = 60) . I f i t i s act i ve t hen cal l t he event pgm. */
I F ( &MSGI D *EQ ' CPI 591A' ) THEN( DO)
RTVCFGSTS CFGD( TRNLI NE) CFGTYPE( *LI N) STSCDE( &STATUS)
I F ( &STATUS *EQ 60) THEN( +
CHGVAR &RTNCOD VALUE( ' 0' ) )
ENDDO
ENDDO
ENDPGM
166
the line indicated in the message ID. Refer to Additional data structures on page 156
for information about the DTLINFO parameter.
Table 24. Event program example
PGM PARM( &MONI TOR &EVTCLS &DTLI NFO &RTNCOD &EXCPTI D)
/ *********************************************************************/
/ * Par amet er s */
/ *********************************************************************/
DCL &MONI TOR *CHAR 10 / * Moni t or name */
DCL &EVTCLS *CHAR 10 / * Event cl ass */
DCL &DTLI NFO *CHAR 752 / * Det ai l i nf or mat i on based on event cl ass */
DCL &RTNCOD *CHAR 1 / * Ret ur n code - 0=moni t or st at us ACTI VE or */
/ * gr oup moni t or I NACTI VE */
/ * 1=moni t or st at us FAI LED/ ACT */
/ * or gr oup moni t or FAI LED */
/ * 2=moni t or st at us FAI LED */
DCL &EXCPTI D *CHAR 7 / * Except i on I D f or hi st or y l og */
/ *********************************************************************/
/ * Local var i abl es */
/ *********************************************************************/
DCL &MSGI D *CHAR 7

/ * Get t he message I D whi ch i s i n t he 21- 27t h posi t i ons of t he det ai l */
/ * i nf or mat i on. */
CHGVAR VAR( &MSGI D) VALUE( %SST( &DTLI NFO 21 7) )

/ * I f t he message I D i s CPI 591A t hen at t empt t o Var y on t he cont r ol l er . */
I F COND( &MSGI D *EQ ' CPI 591A' ) THEN( +
VRYCFG CFGOBJ ( CONTROLLER) CFGTYPE( *CTL) STATUS( *ON) )

/ * Set r et ur n code t o ' 0' t o t el l t he message queue moni t or t o r emai n */
/ * act i ve*/
CHGVAR &RTNCOD VALUE( ' 0' )
/ * Set t he except i on I D t o bl anks si nce t he r et ur n code i s ' 0' */
CHGVAR &EXCPTI D VALUE( ' ' )

ENDPGM
167
CHAPTER 9 Resolving problems
This section identifies how to handle problems with MIMIX Monitor.
168
Gathering information before reporting a problem
Before you report a problem, you should gather the following information:
The MIMIX product, library, installed version, and IBM i operating system level on
the system you are using. To determine this information, follow the procedure
Obtaining MIMIX and IBM i information from your system on page 168.
The Message ID number for any error messages associated with the problem. If
you receive error messages, record the message number, any replacement text
(such as Process X failed for file Y), and the to and from program information, if
available. Since many messages have similar text, this information is much more
helpful to us and enables us to handle your call more efficiently.
The specific operation you were attempting to perform when the error condition
occurred. It is important that we understand what you were trying to do when you
encountered the problem. Try to write down the specific sequence of events that
you were doing when the error condition occurred, such as the commands
entered, the display you were working from, or the program that was running.
Obtaining MIMIX and IBM i information from your system
To obtain the necessary MIMIX and IBM i information before reporting a problem, do
the following:
1. Do one of the following to access the Lakeview Technology Installed Products
display:
If you are configured for a MIMIX replication environment, select option 31
(Product management menu). Then select option 2 (Work with products).
From a command line, enter LAKEVIEW/WRKPRD
2. Next to the product you want, type a 6 (About version) and press Enter. The About
pop-up appears, showing the Product, Library, Installed version, and the OS/400
level on this system.
3. Press F9 (Fixes) to see the Work with Installed Fixes display. From this display
you can determine the latest level of the MIMIX cumulative fix package that is
installed.
Note: You should know the version and release level (VnRnMn) of the IBM i
operating system that is on each system with which you are working. Use
the process above on each system.
MIMIX Monitor commands by group
169
APPENDIX A MIMIX Monitor commands
This section identifies MIMIX Monitor commands, grouped by the area or function in
the product for which they are used.
Security authorization levels for MIMIX Monitor commands are not included. The
Using License Manager book identifies the minimum authorization levels for
commands and describes how to change them.
MIMIX Monitor commands by group
MIMIX Monitor includes commands for starting and ending the master monitor, for
working with monitor objects, switch definitions, and switch device entries, as well as
commands specialized for the UPS monitor.
You should also be familiar with the MIMIX commands that apply to transfer
definitions and system definitions
Master monitor commands
The following commands are used to start and end the master monitor which MIMIX
Monitor uses to control all other monitors.
Monitor commands
Only required parameters of the following commands are listed. For more information
about optional parameters and descriptions of all parameters, prompt on the
command then use F1 (Help). Commands for the UPS monitor are listed separately.
Name Command
End Master Monitor ENDMSTMON
Start Master Monitor STRMSTMON
There are no parameters for these commands.
Name Command Required parameters
Add Monitor Information ADDMONINF
1
MONITOR, CMD
Change Monitor Information
1
CHGMONINF
1
MONITOR
Change Monitor Object CHGMONOBJ MONITOR
Change Monitor Status CHGMONSTS MONITOR
Copy Monitor Object CPYMONOBJ FROMMON, TOMON
Create Monitor Object CRTMONOBJ MONITOR, EVTCLS
Delete Monitor Object DLTMONOBJ MONITOR
Display Monitor Information DSPMONINF MONITOR
Display Monitor Object DSPMONOBJ MONITOR
Display Monitor Status DSPMONSTS MONITOR
End Monitor ENDMON MONITOR
Export Monitor Object EXPMONOBJ MONITOR
Hold Monitor HLDMON MONITOR
Import Monitor Object IMPMONOBJ FROMMON
MIMIX Monitor commands
170
Switch definition commands
Only required parameters of the following commands are listed. For more information
about optional parameters and descriptions of all parameters, prompt on the
command then use F1(Help).
Switch device entry commands
Only required parameters of the following commands are listed. For more information
about optional parameters and descriptions of all parameters, prompt on the
command then use F1 (Help).
MIMIX Model Switch Framework commands
The MIMIX Model Switch Framework is designed to aid you in implementing a
switching environment. Only required parameters of the following commands are
listed. For more information about optional parameters and descriptions of all
parameters, prompt on the command then use F1 (Help).
Release Monitor RLSMON MONITOR
Rename Monitor Object RNMMONOBJ FROMMON, TOMON
Run Monitor RUNMON MONITOR
Start Monitor STRMON MONITOR
Work with Monitors WRKMON
Work with Monitor Information WRKMONINF MONITOR
1
This command can only be accessed from the associated CHGMONOBJ command.
Name Command Required parameters
Name Command Required parameters
Change Switch Definition CHGSWTDFN SWITCH
Create Switch Definition CRTSWTDFN SWITCH
Delete Switch Definition DLTSWTDFN SWITCH
Display Switch Definition DSPSWTDFN SWITCH
Display Switch Status DSPSWTSTS SWITCH
End Switch ENDSWT SWITCH
End Switch Screen ENDSWTSCN SWITCH
Set Switch Source SETSWTSRC SWITCH, DTASRC
Start Switch STRSWT SWITCH
Start Switch Screen STRSWTSCN SWITCH
Work with Switch Definitions WRKSWT
Name Command Required parameters
Add Switch Device Entry ADDSWTDEVE SWITCH, DEV
Change Switch Device Entry CHGSWTDEVE SWITCH, DEV
Display Switch Device Entry DSPSWTDEVE SWITCH, DEV
Load Switch Device Entries LODSWTDEVE SWITCH
Remove Switch Device Entry RMVSWTDEVE SWITCH, DEV
Work with Switch Device Entries WRKSWTDEVE SWITCH
Name Command Required parameters
Change Switch Framework CHGSWTFWK SWTFWK
Check Switch Framework CHKSWTFWK SWTFWK,
MIMIX Monitor commands by group
171
UPS monitor commands
Many of the UPS monitor commands have optional parameters. To see the optional
parameters and their descriptions, prompt on the command then press F1 (Help).
Create Switch Framework CRTSWTFWK SWTFWK, PRDSYSDFN,
EXITPGMLIB
Delete Switch Framework DLTSWTFWK SWTFWK
Retrieve Switch Framework RTVSWTFWK SWTFWK
Run Switch Framework RUNSWTFWK SWTFWK
Name Command Required parameters
Name Command Required parameters
Change UPS Availability CHGUPSAVL
Change UPS Configuration CHGUPSCFG
Change UPS Messages CHGUPSMSG MSGTYP
Display UPS Monitor Status DSPUPSSTS
Test Power Change TSTPWRCHG
Update UPS Availability UPDUPSAVL
Hardware switching devices
172
APPENDIX B Hardware switching devices
If you choose to use a hardware switching device with MIMIX Monitor, this section
describes how to plan for and install hardware switching equipment.
This section describes the Pro Switching System 2 (SM900A) device that can be used
with MIMIX Monitor to handle your hardware switching requirements. The SM900A is
manufactured by Black Box Corporation.
Note: The SM517A Remote Gang Controller will continue to be supported by MIMIX
Monitor but is no longer available from Black Box Corporation. Using the Pro
Switching System 2 (SM900A) for your hardware switch requirements is
recommended.
Hardware switch configurations
173
Hardware switch configurations
You have many options when designing hardware switching configuration to meet
your availability management needs. This information describes two common
configuration possibilities.
When planning a hardware switching configuration, consider the distance the
switching hardware will be from the backup system.
Local configuration - SM900A switch
You must ensure that this switch device is configured so the master chassis address
is set to rAc (displayed on the upper display) and 00 (in the lower display).
When the backup system and the switching hardware are located near each other
(150-200 feet or less), you can connect them using a communication cable.
Figure 10. Hardware switchinglocal configuration. A standard communications cable is
used between the backup system and the remote system gang controller.
Pro Switching System
2 (SM900A)
A
B
Backup
iSeries
IBM Communications
Cable (up to 150 feet)
EIA-J 32/V.24
EIA-J 32/V.24 Enhanced
EIA-449/V.36
Modified Modem
Eliminator
(CBCA229179)
174
Remote configuration
When the distance between the backup system and the switching hardware exceeds
150-200 feet, the connection between them requires a dial-up communication line
and modems.
Figure 11. Hardware switchingremote configuration (SM900A)
Switching hardware requirements
You should consult the product documentation provided with the hardware switching
equipment for various hardware requirements.
A rack card is required to interface each set of ports (A-side/B-side) that can be
switched. Rack cards can interface and switch digital, analog, or coaxial media. Each
rack card contains at least three connectors: one device-in connector and two device-
out connectors. The device-in (common) connector connects the user device to the
card. One device-out connector connects the rack card to the production system and
the remaining device-out connectors connect the rack card to the backup system.
Figure 12 shows examples of rack card connectors.
Figure 12. Example rack card connections.
Pro Switching System
2 (SM900A)
A
B
Backup
iSeries
IBM Communications
Cable (up to 150 feet)
EIA-J 32/V.24
EIA-J 32/V.24 Enhanced
EIA-449/V.36
Modem Modem
OUT to
Production AS/400
OUT to
Backup AS/400
OUT to Production AS/400
OUT to Backup AS/400
OUT to Production AS/400
OUT to Backup AS/400
Device IN
Device IN
Device
IN
Example 1
Example 2 Example 3
Hardware switch configurations
175
Some cards, such as twinaxial interface cards, require two card slots. You can mix the
types of rack cards within each automatic rack chassis. Empty card slots may be filled
with blank panels.
The following types of rack cards are typically available:
Modified modem eliminator: In a local configuration, the backup system is inserted
between the remote system gang switch controller and the communications cable
from the backup system. You need one modified modem eliminator for each remote
system gang controller that is locally connected.
For a local configuration, you will need a special modem eliminator adapter. This part
(C1CB10590) is available from Black Box Corporation. This adapter provides a
unique connector with the pinning shown in Figure 13.
Figure 13. Pin-outs for cable to modified modem eliminator - SM900A.
Modems and communication cables: In a remote configuration, two modems and
communications cables provide the connection between the remote system gang
controller and the backup system. On each side of the connection, you need a
Table 25. Rack cards
DB9 RJ 11 V.35
DB15 RJ 45 Wang BNC/TNC
Double Coax RS-232 4-Wire utility
Coax BNC Twinaxial
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Control Module
(SM903C RS-232)
iSeries RS-232
176
modem and a communication cable no longer than 150 feet. Both modems must be
set to run at the same speed as the remote system gang controller and must share
the same communication characteristics. The modem speed for the SM900A is 9600
bps.
IBM communications cables: You need one cable for each system. (This cable
comes with the IBM Power
TM
Systems Communication Card.) These cables are used
to connect the Power
TM
Systems to the remote system gang controller through either
a local configuration or a remote configuration.
Planning for switching hardware
177
Planning for switching hardware
When you plan to use switching hardware with MIMIX Monitor, you need to identify
the production and backup systems, the devices to be switched, and the number of
ports and switching interfaces required. You also need to identify what devices and
ports are being connected through the switching hardware and determine the types
and lengths of cables the cables you need.
You may find it helpful to make a sketch of your configuration, similar to Figure 14.
Use Appendix C, Work sheets for switching hardware, to help you determine your
device and port assignments and your switching interface card and cable
requirements. You will need information from these work sheets when you configure
the switching hardware.
Figure 14. Sample planning sketch.
Workstation
4
5
6
7
0
1
2
3
4
5
6
7
0
1
2
3
Switching
Hardware
Printer
Production
AS/400
Backup AS/400
Workstation Controller
Workstation Controller
Streaming Tape Drive
Port Port
0 4
4 7
2 6
Printer
Tape Drive
Workstation
178
Consider the following:
Determine what hardware needs to be switched to the backup system. The hardware
devices to be moved to the backup system in the event of a switch need to be switch-
controlled.
Note: Designating multiple points of failure provides the best system protection. To
achieve this goal, the production system and the backup system should have
at least two separate communications connections so that a single failure
does not provoke an unnecessary device switch.
MIMIX Monitor allows for either manual or automatic switching. Determine which best
meets the needs of your enterprise.
You must prepare the backup system for use as the production system. The backup
system must be ready to support any applications, devices, user profiles, or other
operations that you switch to it.
Consider the location and designation of production and backup systems.
Designating the production side as A and the backup side as B when connecting
switching hardware is suggested.
Determine whether the communication configuration between the backup system and
the switching hardware is local or remote. Refer to Hardware switch configurations
on page 173. This will affect your hardware and communications requirements.
Determine the switching interface requirements (cables and rack cards) for production
user devices. Use Work Sheet A: Rack Cards and Cables to assist you.
When communicating over phone lines, keep in mind that anyone can intentionally or
unintentionally call into your modems. Plan to make use of any security capabilities
provided in your switching or communications hardware.
Identify information you need for creating the switch event program and for
configuring the switch definition and associated monitor objects. Consider the
following:
Keep in mind that the commands required to enable the backup system to be
used in production mode will be the basis for the switch (event) user exit program.
Identify the communication objects to be monitored by user-defined monitors and
identify which user-defined monitors will participate in a group monitor designated
to a switch definition.
Identify any objects to be associated with the user programs called by the
monitors.
How many times should MIMIX Monitor retry or attempt recovery for each monitor
object.
Physical planning: The physical location of the production and backup systems and
the switching hardware is flexible. Modems, modem eliminators, and workstation
controllers can accommodate communication between the devices. You should
consider the following:
Draw a floor plan that is to scale. This will help you determine locations of devices
and racks, identify the types of cables you need, and ensure that cable lengths will
be adequate.
Planning for switching hardware
179
Determine how to mount the switching hardware and where it will be placed.
Switching hardware can be mounted on a table or in a data rack, a 19-inch rack,
or a 19-inch cabinet. Rack mounting is considered most secure.
Consider the physical security of the location in which you place the switching
hardware. Because switching between production and backup systems involves
more than merely making a physical switch between A and B ports at the
switch bank, it is important to place the switching hardware in a secure location to
prevent unauthorized users from attempting to improperly perform a manual
switch.
Before ordering hardware, review all environmental and electrical requirements
for the location to ensure that cables you specify on your order will meet your
requirements.
Once the switching hardware and MIMIX Monitor are installed, keep in mind that
whenever devices are added, removed, or relocated, it may be necessary to modify
associated hardware and software configurations. At that time, be sure to update the
planning documentation accordingly.
180
Related communications procedures
These procedures describe how to set up communications that you will need to
connect the backup system to the remote gang switch controller.
You will need a dedicated communications resource. You will also need a separate
communications resource for each hardware switch.
Defining local communications
Do the following to define communications for a local configuration:
1. Determine the resource name for the switch hardware communications. Record
this information.
2. Create the communication line to the remote system gang controller using the
command:
CRTLI NASC LI ND(line-name) RSRCNAME(resource-name)
LI NESPEED(line-speed) MAXBUFFER(2000)
Where the following are defined as:
line-name Communications line name.
resource-name Resource name you recorded during the remote system gang
controller installation.
line-speed Line speed you recorded during the remote system gang controller
installation. This is configured on the SM900A controller card.
3. Create the communications controller using the command:
CRTCTLASC CTLD(controller-name) LI NKTYPE( *ASYNC) LI NE(line-
name)
Where the following are defined as:
controller-name Controller name
line-name Line name from CRTLINASC command
4. Create the device using the command:
CRTDEVASC DEVD(device-name) RMTLOCNAME(remote-location-name)
CTL(controller-name)
Where the following are defined as:
device-name Device name
remote-location-name Remote location name
controller-name Controller name specified in CRTCTLASC command
Note: The device name and the remote location name are required when
creating the switch definition.
5. Vary-on the line and verify that the line stays active.
Related communications procedures
181
Defining remote communications
Use either procedure to define communications for a remote configuration.
For autodial V.25BIS modems
Do the following to define communications for a remote configuration that uses
autodial V.25BIS modems:
1. Determine the resource name for switch hardware communications. Record this
information.
2. Create the communication line to the remote system gang controller using the
command
CRTLI NASC LI ND(line-name) RSRCNAME(resource-name)
CNN( *SWTPP) MODEM( *NORMAL) MODEMRATE( *FULL) SWTCNN( *DI AL)
DI ALCMD( *V25BI S) LI NESPEED(nnnn) MAXBUFFER(2000)
Where the following are defined as:
line-name Communications line name
resource-name Resource name you recorded during the remote system gang
controller installation
nnnn Line speed you recorded during the remote system gang controller
installation. This is configured on the SM900A controller card.
Note: The line speed must match the speed of the remote system gang
controller and the modems for remote configurations.
3. Create the communications controller using the command:
CRTCTLASC CTLD( controller-name) LI NKTYPE( *ASYNC)
SWI TCHED( *YES) LI NE( line-name) I NLCNN( *DI AL) CNNNBR( call-
number)
Where the following are defined as:
controller-name Controller name
line-name Line name from CRTLINASC command
call-number Connection number to dial to connect to the modem.
4. Create the device using the command:
CRTDEVASC DEVD(device-name) RMTLOCNAME(remote-location-name)
CTL(controller-name)
Where the following are defined as:
device-name Device name
remote-location-name Remote location name
controller-name Controller name specified in CRTCTLASC command
Note: The device name and the remote location name are required when
creating the switch definition.
182
5. Vary-on the line and verify that the line stays active.
For other (non-autodial) modems
This procedure creates a line that will not autodial when opened. Use an actual calling
string as the call number when creating the switch definition.
1. Determine the resource name for switch hardware communications. Record this
information.
2. Create the communication line to the remote system gang controller using the
command:
CRTLI NASC LI ND(line-name) RSRCNAME(resource-name)
CNN( *SWTPP) SWTCNN( *DI AL) LI NESPEED(nnnn) CALLNBR(call-
number) AUTODI AL( *YES) I NACTTMR( *NOMAX) MAXBUFFER(2000)
Where the following are defined as:
line-name Communications line name, (SWITCHLIN1)
resource-name Resource name you recorded during the remote system gang
controller installation
nnnn Line speed you recorded during installation of the remote system gang
controller. This is configured on the SM900A controller card.
call-number Phone number of modem, will not autodial when opened.
Note: The line speed must match the speed of the remote system gang
controller hardware and the modems used for remote configurations.
3. Create the communications controller using the command
CRTCTLASC CTLD(controller-name) LI NKTYPE( *ASYNC)
SWI TCHED( *YES) SWTLI NLST(line-name) CNNNBR(call-number)
SWTDSC( *YES)
Where the following are defined as:
controller-name Controller name
line-name Line name from CRTLINASC command
call-number Connection number to dial to connect to the modem.
4. Create the device using the command:
CRTDEVASC DEVD(device-name) RMTLOCNAME(remote-location-name)
CTL(controller-name)
Where the following are defined as:
device-name Device name
remote-location-name Remote location name
controller-name Controller name specified in CRTCTLASC command
Note: The device name and the remote location name are required when
creating the switch definition.
Related communications procedures
183
5. Vary-on the line and verify that the line stays active.
Work sheets for switching hardware
184
APPENDIX C Work sheets for switching hardware
This section provides work sheets that you can use when you are configuring
commercially available hardware switching devices for use with MIMIX Monitor.
Use the work sheets in this appendix to help you configure the hardware switching
device.
Work sheet A: rack cards and cables
Use the following work sheet to identify the cables to connect to each card in a rack
chassis. Use one work sheet for each automatic rack chassis.
Table 26. Rack cards and cables work sheet
Slot assignments for rack chassis #___________
Slot Card code Production cable Backup cable Device cable
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Work sheet B: device and port assignments
185
Work sheet B: device and port assignments
Work sheet C: port layout
Table 27. Device and port assignment work sheet
Device and port assignments
Production system serial #______________________________
Backup system serial #_________________________________
Device Description Production WSC port Backup WSC port
Table 28. Port layout work sheet
WSC name
and port
Card
type
slot
number
Device name
Work sheets for switching hardware
186
0 1 2 3 4 5 6
Production
Backup
Production
Backup
Production
Backup
Production
Backup
Production
Backup
Production
Backup
Table 28. Port layout work sheet
Supported upgrade paths for copying configuration data
187
APPENDIX D Copying configuration data
This section describes how to use the Copy Configuration Data (CPYCFGDTA)
command to copy monitor configuration data.
The CPYCFGDTA command copies configuration data from one library to another
library on the same system. Use this information after MIMIX Enterprise or MIMIX
Professional is installed.
Supported upgrade paths for copying configuration data
The supported scenarios are as follows:
Checklist: copy monitor configuration data from a previ-
ous release
Use this checklist after you have installed version 7 MIMIX Enterprise or MIMIX
Professional and want to copy configuration data from an earlier release of MIMIX
Monitor:
1. Verify that there are valid system and transfer definitions in the product installation
library.
2. Use the procedure in Using the CPYCFGDTA command for MIMIX Monitor on
page 187 to copy the configuration information to the new library.
3. Use the WRKMON command in the new installation library to verify that all of the
previous monitor objects have been created in the new library.
Using the CPYCFGDTA command for MIMIX Monitor
You can use the Copy Configuration Data (CPYCFGDTA) command to copy existing
configuration data to a new installation of MIMIX.
Note: By default, the CPYCFGDTA command replaces all MIMIX configuration
data in the current product library with the information from the specified
Table 29. Supported scenarios for copying configuration
From To
MIMIX version 7 MIMIX version 7
a

a. The installation you are copying to must be at the same or a higher level service
pack.
MIMIX version 6 MIMIX version 7
Copying configuration data
188
library. Any configuration created in the product library will be replaced
with data from the specified library. This may not be desirable.
To copy the appropriate configuration data, do the following:
1. The current (version 7) product that will receive the copied configuration data
must be shut down for the duration of this procedure. See topic Choices when
ending replication in the MIMIX Operations book.
2. Sign on to the system with the security officer (QSECOFR) user profile or with a
user profile that has security officer class authority and all special authorities.
3. From the command line on the MIMIX Basic Main Menu for the version 7
installation, type the command CPYCFGDTA and press F4 (Prompt).
4. At the Copy from library prompt, specify the name of the MIMIX installation library
from which you want to copy data.
5. Press Enter.
Notices
Copyright 1999, 2010, Vision Solutions, Inc. All rights reserved.
The information in this document is subject to change without notice and is furnished under a license
agreement. This document is proprietary to Vision Solutions, Inc., and may be used only as authorized in our
license agreement. No portion of this manual may be copied or otherwise reproduced, translated, or
transmitted in whole or part, without the express consent of Vision Solutions, Inc.
If you are an entity of the U.S. government, you agree that this documentation and the program(s) referred to in
this document are Commercial Computer Software, as defined in the Federal Acquisition Regulations (FAR),
and the DoD FAR Supplement, and are delivered with only those rights set forth within the license agreement
for such documentation and program(s). Use, duplication or disclosure by the Government is subject to
restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software
clause at DFAR 252.227-7013 (48 CFR) or subparagraphs (c)(1) & (2) of the Commercial Computer Software -
Restricted Rights clause at FAR 52.227-19.
Vision Solutions, Inc. makes no warranty of any kind regarding this material and assumes no responsibility for
any errors that may appear in this document. The program(s) referred to in this document are not specifically
developed, or licensed, for use in any nuclear, aviation, mass transit, or medical application or in any other
inherently dangerous applications, and any such use shall remove Vision Solutions, Inc. from liability. Vision
Solutions, Inc. shall not be liable for any claims or damages arising from such use of the Program(s) for any
such applications.
Examples and Example Programs:
This book contains examples of reports and data used in daily operation. To illustrate them as completely as
possible the examples may include names of individuals, companies, brands, and products. All of these names
are fictitious. Any similarity to the names and addresses used by an actual business enterprise is entirely
coincidental.
This book contains small programs that are furnished by Vision Solutions, Inc. as simple examples to provide
an illustration. These examples have not been thoroughly tested under all conditions. Vision Solutions,
therefore, cannot guarantee or imply reliability, serviceability, or function of these example programs. All
programs contained herein are provided to you AS IS. THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY DISCLAIMED.
MIMIX and Vision Solutions are registered trademarks of Vision Solutions, Inc.
IntelliStart, MIMIX dr1, MIMIX AutoGuard, MIMIX AutoNotify, MIMIX Availability Manager, MIMIX Enterprise,
MIMIX Professional, MIMIX DB2 Replicator, MIMIX Object Replicator, MIMIX Monitor, MIMIX Promoter, MIMIX
Switch Assistant, RJ Link, Replicate1, Vision AutoValidate, and MIMIX Global are trademarks of Vision
Solutions, Inc.
AS/400, DB2, eServer, i5/OS, IBM, iSeries, OS/400, Power, System i, and WebSphere are trademarks of
International Business Machines Corporation.
Internet Explorer, Microsoft, Windows, and Windows Server are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries.
Netscape is a registered trademark of AOL LLC.
Mozilla and Firefox are trademarks of the Mozilla Foundation.
UNIX is a registered trademark of The Open Group in the United States and other countries.
J ava and all J ava-based trademarks are trademarks or registered trademarks of Sun Microsystems, Inc. in the
United States and other countries.
All other trademarks are the property of their respective owners.
Corporate Headquarters
Vision Solutions, Inc.
Irvine, California USA
Tel: +1 (949) 253-6500
190
Index
A
accessing
MIMIX Main Menu 34
active monitor status 50
adding device entries 96
additional data structures
detail information format 156
error code structure 159
API, MIMIX Monitor User Access 152
asynchronous processing 22, 59, 73
interval master monitor 25
authority
all object (*ALLOBJ ) 30
B
battery
available power, updating 138
estimating maximum time 127
C
cables
communication 176
IBM communications 176
calling commands from a monitor 58
cards, rack 174
changing
logon message during switch 98
monitor object 51
monitor status 45
switch definition 85
switch device entry 96
checklist
configuring UPS monitor 126
preparing a switch 31
preparing for MIMIX Monitor 29
commands, by mnemonic
ADDMONINF 62
ADDMSGLOGE 145
ADDSWTDEVE 96
CHGMONINF 51
CHGMONOBJ 51
CHGMONSTS 45
CHGSWTDEVE 96
CHGSWTDFN 85
CHGSWTFWK 105
CHGUPSAVL 138
CHGUPSCFG 133
CHGUPSMSG 135
CHKSWTFWK 105
CPYCFGDTA 187
CRTMONOBJ 61
CRTSWTDFN 81
CRTSWTFWK 105
DLTMONOBJ 51
DLTSWTDFN 86
DLTSWTFWK 105
DSPMONOBJ 52
DSPMONSTS 50
DSPSWTDEVE 97
DSPSWTDFN 87
DSPSWTSTS 94
ENDMON 43
ENDSWT 89
ENDSWTSCN 98
EXPMONOBJ 53
HLDMON 47
IMPMONOBJ 54
LODSWTDEVE 96
MIMIX 34
RMVSWTDEVE 97
RNMMONOBJ 52
RSLMON 48
RTVSWTFWK 105
RUNMON 44
RUNSWTFWK 107
SETSWTSRC 91
STRMON 42
STRMSTMON 37
STRSWT 89
STRSWTSCN 98
TSTPWRCHG 139
UPDUPSAVL 138
WRKMON 39
WRKMONINF 52
WRKMSGLOG 49
WRKSWT 80
WRKSWTDEVE 96
commands, by name
Add Message Log Entry 145
Add Monitor Information 62
Add Switch Device Entry 96
Change Monitor Information 51
Change Monitor Object 51
Change Monitor Status 45
Change Switch Definition 85
Change Switch Device Entry 96
Change Switch Framework 105
Change UPS Availability 138
Change UPS Configuration 133
191
Change UPS Messages 135
Check Switch Framework 105
Copy Configuration Data 187
Create Monitor Object 61
Create Switch Definition 81
Create Switch Framework 105
Delete Monitor Object 51
Delete Switch Definition 86
Delete Switch Framework 105
Display Monitor Object 52
Display Monitor Status 50
Display Switch Definition 87
Display Switch Device Entry 97
Display Switch Status 94
End Monitor 43
End Switch 89
End Switch Screen 98
Export Monitor Object 53
Hold Monitor 47
Import Monitor Object 54
Load Switch Device Entries 96
MIMIX 34
Release Monitor 48
Remove Switch Device Entry 97
Rename Monitor Object 52
Retrieve Switch Framework 105
Run Monitor 44
Run Switch Framework 107
Set Switch Source 91
Start Master Monitor 37
Start Monitor 42
Start Switch 89
Start Switch Screen 98
Test Power Change 139
Update UPS Availability 138
Work with Message Log 49
Work with Monitor Information 52
Work with Monitors 39
Work with Switch Definitions 80
Work with Switch Device Entries 96
commands, calling from a monitor 58
commands, list of
master monitor 169
monitor 169
switch definition 170
switch device entry 170
UPS monitor 171
concepts 13
MIMIX Model Switch Framework 16
switching 14
condition program
creating 149
example 164
parameters 149
conditions, predefined 13
configuration data, copying 187
contacting Vision Solutions 11
copy configuration data 187
CustomerCare 11
D
deleting
monitor object 51
switch definition 86
DGSELECT, user exit program 121
disabled monitor 25, 77
disabling, MIMIX Model Switch Framework 114
displaying
job log for monitor jobs 55
monitor object 52
switch definition 87
switch device entry 97
displays
list of monitors 39
displays, accessing
Work with Switch Definitions 80
Work with Switch Device Entries 96
documents, MIMIX 8
E
enabling, MIMIX Model Switch Framework 114
ending
monitor 43
monitors for a switch 89
UPS monitor 136
ENDPROD, user exit program 121
estimating time
maximum battery 127
power down options 127
event class
description 13
subclass 72
event class types
*EXDJ RN 75
*GROUP 77
*INTERVAL 72
*J RN 74
*MSGQ 75
*PREDFN 77
192
*TIME 76
event program
creating 150
description 14
example 165
MSFEVENT 106
parameters 150
example
group monitor 77
interval monitor 73
journal monitor 74
message queue monitor 76
time monitor 76
example program
condition 164
event 165
interface exit 163
F
field descriptions
MMUSRACCS API 154
program interfaces 160
formats, MMUSRACCS API 153
G
group monitor
creating with CRTSWTFWK command 105
description 77
processing 25
when to use 77
H
hardware switching
configuring communications 180
planning 178
hardware switching devices
local configurations, supported 173
planning 177
planning work sheets 184
remote configurations, supported 174
synchronizing hardware 92
held monitor
releasing 48
holding a monitor 47
I
impersonation, IP 31
switch definition for 81, 83
importing monitors 54
interface exit program
calling when importing monitor 55
creating 147
description 14
example 163
operation 20
parameters 147
specifying in monitor object 58
interval master monitor
description 25
ending 38
interaction with active interval monitors 25
starting indirectly 38
interval monitor
asynchronous and synchronous processing
73
description 72
subclasses 72
when to use 73
J
job log 56
job priority, for UPS monitor 131
journal monitor
description 74
when to use 74
writing entry to journal 74
L
local configuration, SM900A switch 173
M
master monitor
description 21
ending 37
starting 37
menu
MIMIX Main 34
message log 145
message queue
notifying of power below 100% 138
system operator 140
message queue monitor
description 75
example programs for a 163
when to use 76
messages, MIMIX Model Switch Framework
115
MIMIX monitor
193
key capabilities 12
MIMIX Monitor, security considerations 30
MIMIXSBS subsystem 33
MIMIXUPS subsystem 126
MMUSRACCS member 152
modem 176
other 182
V.25BIS 181
modified modem eliminator 175
monitor
creating 57
monitor definition, See monitor object 13
monitor group 57
monitor object 13
monitor types
*EXDJ RN 75
*GROUP 77
*INTERVAL 72
*J RN 74
*MSGQ 75
*PREDFN 77
*TIME 76
monitors
associated with switch definition 89
copying 51
creating 61
deleting 51
displaying 52
ending 43
exporting 53
extended journal 75
group 77
holding 47
importing 54
inactive status 50
interval 72
interval master monitor 25
job logs 55
journal 74
master monitor 21
message queue 75
printing 52
programming for 144
releasing 48
renaming 52
shipped with product 123
starting 42
status, displaying 50
time 76
tips for creating 57
user-defined 13
user-specified information 52
working with 36
monitors shipped with MIMIX 17
independent ASP threshold 17
MMNFYNEWE 17
remote journal link 17
N
notifying users of switch 98
O
operating requirements, MIMIX Model Switch
Framework 103
operation
asynchronous processing 23
interface exit processing 20
synchronous processing 22
operator intervention, requesting power down
134
orphaned data, objects 122
overview, MIMIX Monitor 12
P
parameters
condition program 149
exit program 150
interface exit program 147
MMUSRACCS API 152
planning, hardware switching work sheets 184
policies
default switch framework 103
power
simulating changes in 139
updating available power for UPS monitor
138
power down option
changing 133
controlled 124
estimating time for 127
immediate 124
instant 125
power down, requesting operator intervention
134
predefined monitor, UPS monitor 124
preparation sequence, changing 133
printing
monitor object 52
switch definition 88
194
switch device entry 97
problems
reporting a problem 168
process type 59
program
condition program example 164
condition program parameters 149
event program example 165
event program parameters 150
interface exit program example 163
interface exit program parameters 147
interface exit program, effect on monitors 14
running when monitor is inactive 44, 95
startup, modifying 129
UPS monitor failure exit program 125
UPS monitor restore exit program 125
programming
MMUSRACCS API 152
switching operations 146
UPS monitor 146
publications
IBM eServer iSeries 10
R
removing a switch, device entry 97
renaming a monitor 52
retry attempts 22, 58
RUNSWTFWK, using 107
S
security
MIMIX Model Switch Framework 104
MIMIX Monitor considerations 30
shipped monitor
UPSMON 17
simulating power changes 139
starting
master monitor 37
MIMIXUPS subsystem 126
monitor 42
monitors for a switch definition 89
UPS monitor 136
startup program
modifying 129
startup programs
MIMIX subsystem 33
status
changing monitor 45
inactive monitors 50
master monitor, active requirement 37
monitor status, displaying 50
monitor values 40, 50
monitor, disabled 25, 77
status codes, MIMIX Model Switch Framework
117
STRBCKUP, user exit program 121
STRPROD, user exit program 121
subclass 72
subsystem
MIMIXSBS, starting 33
MIMIXUPS, starting 126
Switch Assistant 100
switch definition
changing 85
checklist for creating 31
creating 81
creating type *NONE 83
deleting 86
description 15
displaying 87
displaying status 94
ending associated monitors 89
monitors associated with 89
printing 88
starting associated monitors 89
using IP impersonation 81
working with 79
switch framework process, stopping 121
switchback 101
switching
after errors 116
automatically 106
command for 28
concepts 14
configuration 173
manually 91
switching devices, hardware 172
switchover 101
SWTFWKCFM, user exit program 121
synchronization 101
synchronizing switching hardware 92
synchronous processing 22, 59, 73
T
testing
switching operation 32
UPS configuration 137
UPS monitor 139
195
time monitor
creating 61
description 76
tips 62
when to use 76
tips
for all monitors 57
for time monitors 62
U
updating available power 138
UPS monitor 123
accessing menu 132
battery time, estimating 127
configuration checklist 126
ending 136
ensuring always active 129
exit programs overview 125
failure exit program 133
job priority, setting 131
maximum UPS battery time 124
operator intervention overview 125
operator intervention, setting 134
overview 124
power down option 133
power down time, estimating 127
preparation functions overview 124
preparation sequence 133
preparation time 133
restore exit program 134
starting 136
subsystem, changing 143
testing configuration 137
updating available power 138
warning message text, changing 135
user exit programs
DGSELECT 121
ENDBCKUP 121
ENDPROD 121
STRBCKUP 121
STRPROD 121
SWTFWKCFM 121
user profile requirements 44, 103
W
when to use
group monitor 77
interval monitor 73
journal monitor 74
message queue monitor 76
time monitor 76
work sheets 184

You might also like