Oracle® Process Manager and Notification Server Administrator's Guide
10g Release 2 (10.1.2) B13996-02 |
|
Previous |
Next |
This chapter provides common configuration examples, and descriptions of elements and attributes for the OPMN opmn.xml
file.
It contains the following topics:
Example 3-1 shows all possible elements and attributes that may appear in an opmn.xml
file that are not specific to any Oracle Application Server component.
Note: OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^. |
Example 3-1 Common Configuration Elements and Attributes
<opmn> <notification-server> <ipaddrremote="ip" request="ip"/> <port local="port" remote="port" request="port"/> <log-file path="path" level="level" rotation-size="kBytes" rotation-hour="HOD"/> <ssl enabled="boolean" wallet-file="path" wallet-password="password"/> </notification-server> <process-manager insecure-remote-requests="boolean"> <log-file path="path" level="level" rotation-size="kBytes" rotation-hour="HOD"/> <process-modules> <module path="path" tag="tag-id" status="state" cron="interval"> <module-data> <category id="id"> <data id="id" value="value" process-conversion="boolean"/> </category> </module-data> <module-idid="module-id"/> </module> </process-modules> <ias-instanceid="ias-instance-name" ORACLE_HOME="path"> <environment> <variable id="id" value="value" append="boolean" process-conversion="boolean"/> </environment> <!-- module-data --> <ias-component id="component-id" id-matching="boolean" status="state"> <!-- environment --> <!-- module-data --> <dependencies> <database db-connect-info="connect" infrastructure-key="key" timeout="depend-timeout"cache-timeout="cache-timeout"/> <OID address="address" timeout="depend-timeout" cache-timeout="cache-timeout"> <ssl enabled="boolean" wallet-file="path" wallet-password="password"> </OID> <OSSO host="hostname" port="port" URI="uri" timeout="depend-timeout" cache-timeout="cache -timeout"/> <ssl enabled="boolean" wallet-file="path" wallet-password="password"> </OSSO> <managed-processias-instance="ias-instance-id" ias-component="ias-component-id" process-type ="process-type-id" process-set="process-set-id" autostart="boolean" autostop="boolean" timeout="depend-timeout" cache-timeout="cache-timeout"/> </dependencies> <process-type> id="process-type-id" module-id="module-id" status="state" working-dir="path"> <!--environment--> <!-- module-data --> <!-- dependencies --> <event-scripts> <pre-startpath="path"> <pre-stop path="path"> <post-crash path="path"> </event-scripts> <start timeout="timeout" retry="num"/> <stop timeout="timeout"/> <restart timeout="timeout" retry="num"/> <ping timeout="timeout" retry="num" interval="interval"/> <port id="id" range="range"/> <process-set id="process-set-id" restart-on-death="boolean" numprocs="num" minprocs="min" maxprocs="max" status="state" working-dir="path" parallel-requests= "boolean"> <!-- environment --> <!-- module-data --> <!-- dependencies--> <!-- event script --> <!-- start --> <!-- stop --> <!-- restart --> <!-- ping --> <!-- port --> </process-set> </process-type> </ias-component> </ias-instance> </process-manager> </opmn>
This section describes the elements and attributes in the opmn.xml
file that are not specific to any Oracle Application Server component. This section also provides attribute descriptions of the elements.
Top-level element for opmn.xml
Configures or, contains elements to configure the ONS portion of OPMN.
remote, request
Specifies host information for ONS listener threads and host port bindings.
remote="ip"
IP address or host name to which ONS will bind its remote port. The remote port is used for ONS to ONS communication. Notifications pass from ONS to ONS through the remote port, and OPMN uses ONS to route remote requests to other OPMNs through the remote port.
request="ip"
IP address or host name to which ONS will bind its remote port. This port can only be used for obtaining status information (DMS).
local, remote, request
Configuration of the port
information for ONS listener threads host and port bindings.
local="port"
ONS local port value.
remote="port"
ONS remote port value.
request="port"
ONS request port
value.
path, level, rotation-size, rotation-hour
Configuration definitions for the ONS log mechanism.
path="path"
The path
attribute is a value string. All directories specified in the path must already exist, and OPMN must have read and write permissions for the directory in which the log file resides. $ORACLE_HOME
may be used.
ORACLE_HOME
is the root directory in which Oracle software is installed.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
level="level"
This value specifies the ONS logging level.
0 No logging
1 Fatal errors
2 Errors
3 Warnings
4 Events worth noting
5 Listener and resource management, opmn.xml
parse information
6 Connection management, internal notification routing, and worker thread management
7 Notification parsing and processing, subscription addition and removal, and high level send queue checking
8 Received notification content, detailed send queue processing, detailed subscription processing
9 Sent notification content and detailed subscription processing
rotation-size="kBytes"
The maximum size in kilobytes of the log file. When the log file reaches the configured size, the ONS logging mechanism will close the log file, rename it with an integer time stamp, and then create a new log file. This attribute may be used with rotation-hour
.
rotation-hour="HOD"
At the prescribed hour of the day, the ONS logging mechanism will close the log file, rename it with an integer time stamp, and then create a new log file. This attribute may be used with rotation-size
.
enabled, wallet-file, wallet-password
enabled="boolean"
true
or false
If the value is true, enables SSL for ONS.
wallet-file="path"
Specify the Oracle wallet to use for authentication on ONS connections. $ORACLE_HOME
may be used.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
wallet-password="password"
The password string for the specified wallet.
insecure-remote-requests
The process-manager
contains the configuration definitions for the PM portion of OPMN.
insecure-remote-requests="boolean"
true
or false
By default OPMN will only allow start, stop, restart, shutdown and reload requests rerouted from remote OPMNs if ONS SSL is enabled
and a wallet file is configured for authentication.
Note: Setting this attribute totrue overrides that security check and enables these requests to be issued remotely with no security features configured.
|
Setting this attribute to true
is a major security risk and should only be done for testing purposes with all connected OPMNs behind a well secured fire wall or completely disconnected from any external network.
path, level, rotation-size, rotation-hour
Configuration definitions for the PM log mechanism.
path="path"
All directories specified in the path must already exist, and OPMN must have read and write permissions for the directory in which the log file resides. $ORACLE_HOME
may be used.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
level="level"
This value specifies the PM logging level.
0 No logging
1 Fatal errors
2 Errors
3 Warnings
4 Events worth noting
5 Internal and module initialization, process monitoring, and dependency check results
6 Process resource management, http request and process job scheduling and execution, and dependency check details
7 Http request parsing and resource management
8 Http request response, and DMS statistics collection and requests
9 Low level thread tracing
rotation-size="kBytes"
The maximum size in kilobytes of the log file. When the log file reaches the configured size, the PM logging mechanism will close the log file, rename it with an integer time stamp, and then create a new log file. This attribute may be used with rotation-hour
.
rotation-hour="HOD"
At the prescribed hour of the day, the PM logging mechanism will close the log file, rename it with an integer time stamp, and then create a new log file. This attribute may be used with rotation-size
.
The PM dynamically loads in a library for each specified process module. Each process module is designed to support a specific set of process-type
, and is only required if those process-type
are configured.
path, tag, status, cron
A module
is used to provide process-type
specific support for the PM. Each module is implemented as a shared library which exports a set of standard functions and uses the PM process module API. A module must provide a list of the process-types
it supports, and only one configured process module may list a specific process-type
; no two modules can list the same process-type
.
path="path"
The path must specify the shared library file, but if the library file has the standard system suffix (.so
for UNIX and .dll
for Windows), the suffix may be omitted and OPMN will automatically append it. $ORACLE_HOME
may be used when specifying the path.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
tag="tag-id"
A module may report its tag value when logging errors to the PM log file or as part of the response to a request. While optional, it is a good idea to set this attribute to a meaningful value to help track any issues with process management.
status="state"
enabled
critical, enabled, or disabled
A module may be enabled
, in which case PM loads in its shared library when it starts and calls the module's initialization functions, or disabled
in which case the module entry is completely ignored. If the module process-types
are configured in opmn.xml
they must also be disabled
. The critical
state is the same as enabled
, except that OPMN will terminate with a fatal error code if the module initialization fails.
cron="interval"
Specify the interval in seconds between calls to the module's cron
callback function. Configuring a cron
interval for a module that does not support the cron
callback is not allowed. Unless you have designed the module, you should neither add nor alter this attribute.
The module-data
blocks are used to define module specific name-value pairs that are meaningful only to a specific module. Each module-data
block is organized into categories, which contain the name-value data pairs.
The module-data
blocks can be defined for multiple elements within opmn.xml
, and OPMN will create an aggregate module-data
block at the process-set
level that contains all values defined at or above it. If multiple definitions exist in this hierarchy with the same category id
and data id
, the value defined at the lowest level is used.
Table 3-1 illustrates the module-data
defined at each level in the hierarchy (with the highest level displayed at the top) and the resultant union at the process-set
level of all of the module-data
definitions:
Table 3-1 module-data Hierarchy
Module | Definition |
---|---|
|
<category id="CatA"> <data id= "DataAA" value="aaaa"/> </category> |
ias-component |
<category id="CatA"> <data id= "DataAB" value="abab"/> </category> <category id="CatB"> <data id= "DataBA" value="baba"/> </category> |
module |
<category id="CatA"> <data id= "DataAC" value="acac"/> </category> |
process-type |
<category id="CatA"> <data id= "DataAA" value="XXXX"/> </category> |
process-set |
<category id="CatB"> <data id= "DataBB" value="bbbb"/> </category> |
RESULT |
<category id="CatA"> <data id= "DataAA" value="XXXX"/> <data id= "DataAB" value="abab"/> <data id= "DataAC" value="acac"/> </category> <category id="CatB"> <data id= "DataBA" value="baba"/> <data id= "DataBB" value="bbbb"/> </category> |
id
The category
is an organizational level within a module-data
block.
id="id"
This string identifies a data category. Each category id
within a single module-data
block must be unique, but multiple module-data
blocks may contain the same data category ids
, in which case the categories are considered to be related.
id, value, process-conversion
A data name value definition within a module-data
category.
id="id"
This string identifies a data element. Each data id
within a single category must be unique, but multiple categories may contain the same data identifications. Data elements with the same identification as others, defined in different categories with the same identification are related.
value="value"
The value string associated with the data element id.
Any environment variable defined anywhere within the scope of the process-set
(any level at or above the process-set
) in which the data value is defined (again, any level at or above the process-set
) referenced within the value string as $variable
or %variable%
will be expanded to the variable value.
process-conversion="boolean"
true
true
or false
By default OPMN converts slashes in the data value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each '\' character is converted to '/' and on Windows each '/' is converted to '\'). Set this attribute to false
to disable conversion.
Note that if process-conversion is true
, OPMN uses the ^ character as an escape character to disable process conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
id
The module-id
name defines the type of process and associates the configuration with a process module.
This identifier is used by each process-type
to specify which module supports it. A module may be configured with multiple module-ids
.
id="module-id"
id
, ORACLE_HOME
The configuration definitions for an Oracle Application Server instance. Only one ias-instance
is supported for each OPMN.
id="ias-instance-name"
This string should match the DCM configured ias-instance
name in dcm.conf
. OPMN itself ignores the value of this string and always uses the DCM configured value.
ORACLE_HOME="path"
This path must be the $ORACLE_HOME
equivalent for this Oracle Application Server instance.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
Like module-data
blocks, environment
blocks can be defined for multiple elements within the opmn.xml
file, and OPMN will create an aggregate environment
block at the process-set
level that contains all values defined at, or above it. If multiple definitions exist in this hierarchy with the same id
, the value defined at the lowest level is used.
Note: OPMN sets the following default environment variables at theias-instance level, with the values extracted either from the ias-instance configuration or from the OPMN run time environment:
UNIX: Windows: |
id, value, append, process-conversion
The environment variable name and value are defined with this element.
id="name"
The environment variable name. An environment id
may be duplicated within an environment
block, with the last defined value taking priority over earlier definitions. The same environment id
may be defined within environment
blocks for different elements, and the value defined at the lowest level will take priority over values defined at higher levels.
value="value"
The environment value. Environment variables referenced within the value string as $variable
or %variable%
will be expanded to the variable value. The same environment variable may reference itself to use a definition defined at a higher level, or earlier within this same environment
block.
You may use the UNIX shell syntax for referencing an environment variable, $variable
or ${variable}
, or the Windows format %variable%
. Referenced variables that have not been defined remain in place as referenced, and so value="_notdefined_"
would remain unchanged if notdefined
was not defined.
For example, the following environment block yields a value for accumulate
of "foobar
".
<environment> <variable id="accumulate" value="foo"> <variable id="accumulate" value="${accumulate}bar"> </environment>
append="boolean"
true
or false
You can force OPMN to append the new environment variable value to the previously defined value, with the system library delimeter placed in between the two values (':' for UNIX and ';' for Windows) by specifying a value of true
for this attribute. This is useful when assembling a value for a variable such as CLASSPATH
.
For example, the following environment
block yields a value for CLASSPATH
of "/foo:/bar
" on a UNIX system.
<environment>
<variable id="CLASSPATH" value="/foo">
<variable id="CLASSPATH" value="/bar" append="true">
</environment>
process-conversion="boolean"
true
true
or false
OPMN converts slashes in the environment value string to be those of the directory path separator character for the system on which OPMN is running (for UNIX each \ character is converted to /; for Windows each / is converted to \).
If the process conversion is true
, OPMN uses the ^ character as an escape character to disable slash conversion. ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string. For example, ^^ yields ^.
id, id-matching, status
An ias-component
is a logical grouping of process-type
for administrative purposes.
id="component-id"
The id
attribute uniquely identifies this ias-component
within the ias-instance
.
id-matching="boolean"
true
or false
By default OPMN requests that do not specify ias-components
match all configured ias-components
, unless the id-matching
attribute for a component is set to true
, in which case the request must explicitly include the ias-component id
in order to affect the ias-component
or any process-type
or process-set
configured for that ias-component
.
status="state"
enabled
enabled
or disabled
An ias-component
may be enabled
, in which case OPMN parses all of its configured attributes and elements and enables requests to operate upon it, or disabled
, in which case the ias-component
entry is completely ignored.
OPMN uses dependencies
to determine if a process should be started or not. Like module-data
and environment
block, dependencies blocks can be defined for multiple elements within the opmn.xml
file, and OPMN will create an aggregate dependency list at the process-set level that contains all dependencies defined at or above it. If duplicate dependencies are defined at different levels, then duplicate checks on that dependency will be made before starting a process. OPMN will create an aggregate dependency list at the process-set
level that contains all dependencies defined at or above it. If duplicate dependencies are defined at different levels, then duplicate checks on the dependency will be made before starting a process.
There are two primary types of dependencies: external and internal. External dependencies are for those resources not managed by OPMN. For example: OracleAS Metadata Repository and Application Server Control Console.
An external program is executed by OPMN to perform the check on the resource. Internal dependencies are for OPMN-managed processes (unit), which may include processes managed on a remote OPMN.
OPMN maintains a cache of dependency states which contains the last known state of each dependency, and the time it was last checked. A cache-timeout
parameter for each dependency enables users to specify how long to use its state in the cache, or if it should be used at all. Similarly, a general timeout parameter for each dependency will determine how long OPMN will wait for a status update from that dependency before aborting the dependency check and the process start.
OPMN checks dependencies in the order in which they are declared. The traversal of this list of dependencies concludes either with the full sequence of successful checks, the dependency is available, or the first check failure, the dependency is not available, or the dependency check timed out.
db-connect-info, infrastructure-key, timeout, cache-timeout
Specifies the database to check: either db-connect-info
or infrastructure-key
is used to identify the database.
db-connect-info="connect"
infrastructure-key
is not specified.
The string required to connect to the database.
infrastructure-key="key"
db-connect
is not specified.
The infrastructure key
required to identify the database.
timeout="depend-timeout"
1200
The timeout
attribute specifies in seconds how long OPMN will wait for a dependency check to complete. If the check takes longer than the configured timeout, then OPMN will consider the check to have failed.
cache-timeout="cache-timeout"
600
The cache-timeout
attribute specifies how long in seconds OPMN will use the current "up" status for this dependency's entry in the cache. If the last successful dependency check was within the prescribed number of seconds from the current check, then the dependency check is instantly flagged as successful, otherwise another dependency check will be performed. Note that the cache-timeout
is only for the last successful check of the dependency, and if the previous check failed, another access of the dependency will be performed for this check. A value of 0 indicates OPMN will always perform the check.
address, infrastructure, timeout, cache-timeout
Specifies the Oracle Internet Directory (OID
) service to check either an address string for a specific Oracle Internet Directory, or that the OracleAS Infrastructure flag is set to true
to use the default infrastructure Oracle Internet Directory.
address="address"
The address
string required to connect to Oracle Internet Directory.
infrastructure="boolean"
address
is not set.
true
or false
Use the default infrastructure Oracle Internet Directory for this Oracle Application Server instance.
timeout="depend-timeout"
1200
The timeout
attribute specifies in seconds how long OPMN will wait for a dependency check to complete. If the check takes longer than the configured timeout, then OPMN considers the check to have failed.
cache-timeout="cache-timeout"
600
The cache-timeout
attribute specifies how long in seconds OPMN will use the current "up" status for the dependency entry in the cache. If the last successful dependency check was within the prescribed number of seconds from the current check, then the dependency check is flagged as successful. Otherwise, OPMN performs another dependency check. The cache-timeout
is only for the last successful check of the dependency. If the previous check failed, OPMN performs another access of the dependency check. A value of 0 indicates OPMN will always perform the check.
enabled, wallet-file, wallet-password
The SSL information for the Oracle Internet Directory connection.
enabled="boolean"
true
or false
To enable SSL on the Oracle Internet Directory connection, set this attribute to true
.
wallet-file="path"
The path to a wallet file for authentication of the Oracle Internet Directory connection. $ORACLE_HOME
may be used.
OPMN will convert slashes in the wallet-file value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
wallet-password="password"
The password for the specified wallet-file.
timeout="depend-timeout"
1200
The timeout
attribute specifies in seconds how long OPMN will wait for a dependency check to complete. If the check takes longer than the configured timeout, then OPMN considers the check to have failed.
cache-timeout="cache-timeout"
600
The cache-timeout
attribute specifies how long in seconds OPMN will use the current "up" status for the dependency entry in the cache. If the last successful dependency check was within the prescribed number of seconds from the current check, then the dependency check is flagged as successful. Otherwise, OPMN performs another dependency check. The cache-timeout
is only for the last successful check of the dependency. If the previous check failed, OPMN performs another access of the dependency check. A value of 0 indicates OPMN will always perform the check.
host, port, URI, timeout, cache-timeout
Specifies the OracleAS Single Sign-On (OSSO
) service to check.
host="hostname"
The hostname for the OracleAS Single Sign-On connection.
port="port"
The port for the OracleAS Single Sign-On connection.
URI="uri"
The URI for the OracleAS Single Sign-On connection.
enabled, wallet-file, wallet-password
The SSL information for the OracleAS Single Sign-On connection.
enabled="boolean"
true
or false
To enable SSL on the OracleAS Single Sign-On connection, set this attribute to true
.
wallet-file="path"
The path to a wallet file for authentication of the OracleAS Single Sign-On connection. $ORACLE_HOME
may be used.
OPMN will convert slashes in the wallet-file value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
wallet-password="password"
The password for the specified wallet-file.
timeout="depend-timeout"
1200
The timeout
attribute specifies in seconds how long OPMN will wait for a dependency check to complete. If the check takes longer than the configured timeout, then OPMN considers the check to have failed.
cache-timeout="cache-timeout"
600
The cache-timeout
attribute specifies how long in seconds OPMN will use the current "up" status for the dependency entry in the cache. If the last successful dependency check was within the prescribed number of seconds from the current check, then the dependency check is flagged as successful. Otherwise, OPMN performs another dependency check. The cache-timeout
is only for the last successful check of the dependency. If the previous check failed, OPMN performs another dependency check. A value of 0 indicates OPMN will always perform the check.
ias-instance, ias-component, process-type, process-set, autostart, autostop, timeout, cache-timeout
Specifies the managed process to check. A process for process-type
or process-set
does not start unless the specified dependency managed process is alive. Circular dependencies are detected and rejected for local managed processes, but not for remote managed processes; this may result in a dependency check deadlock, which times out.
ias-instance="ias-instance-id"
ias-instance
of the current process-type
or process-set
.
The ias-instance
for the managed process dependency. If the specified ias-instance
is not managed by the current OPMN, it is assumed to be a remote managed process dependency.
ias-component="ias-component-id"
The ias-component
for the managed process dependency.
process-type="process-type-id"
The process-type-id
for the managed process dependency.
process-set="process-set-id"
The process-set-id
for the managed process dependency.
autostart="boolean"
true
or false
If the managed process dependency is not running when the check is performed, attempt to start it.
autostop="boolean"
true
or false
When the managed process dependency is stopped, then stop the managed process. The attribute is always false
for remote managed process dependencies.
timeout="depend-timeout"
1200
The timeout
attribute specifies, in seconds, how long OPMN will wait for a dependency check to complete. If the check takes longer than the configured timeout, then OPMN considers the check to have failed.
cache-timeout="cache-timeout"
600
This parameter is only used for a process managed by a remote OPMN. The cache-timeout
attribute specifies how long in seconds OPMN will use the current "up" status for the dependency entry in the cache. If the last timeout dependency check was within the prescribed number of seconds from the current check, then the dependency check is instantly flagged as successful, otherwise OPMN performs another dependency check. Note that the cache-timeout
is only for the last successful check of the dependency, and if the previous check failed, OPMN another access of the dependency will be performed for this check. A value of 0 indicates OPMN will always perform the check.
Note: Thecache-timeout is only for the last successful check of the dependency, and if the previous check failed, OPMN will perform another dependency check.
|
<process-type>
id, module-id, status, working-dir
A process-type
is a grouping of process-sets
that are supported by the same module.
id="process-type-id"
The id
attribute uniquely identifies this process-type
within the ias-component
.
module-id="module-id"
The module-id
attribute must map directly map to the module-id
element that supports this process-type
.
status="state"
enabled
enabled
or disabled
A process-type
may be enabled
, in which case OPMN parses all of its configured attributes and elements and enables requests to operate upon it, or disabled
, in which case the process-type
entry is completely ignored and treated as if it were not listed in opmn.xml
.
working-dir="path"
This path specifies the working directory set for managed processes created that belong to this process-type
. If a process-set
also defines a working-dir
attribute, then that path takes precedence over the process-type
path. $ORACLE_HOME
may be used.
OPMN will convert slashes in the working-dir value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
event script
is executed when a specific process related event has occurred. OPMN waits until the script completes or times out before proceeding with the next action for the process.
Table 3-2 Event Script Arguments
Option Name | Option Argument | Description |
---|---|---|
|
|
An integer value for the current |
|
|
The |
|
|
The |
|
|
The |
|
|
The |
|
|
The |
- |
|
The path for the |
- |
|
The path for the |
|
|
A string indicating the reason script was executed. The |
- |
|
The operating system integer value given for the |
- |
|
An integer value for the system start time of the process (in seconds). |
<pre-start>
path
OPMN runs the pre-start
script after any configured dependency checks have been performed (and passed) and before the process is actually started. The timeout for this script is the timeout value configured for starting the process itself, and any time consumed by the execution of this script counts towards the process start timeout. If the script times out, the process will not be started and any associated http request will fail.
Be cautious when you execute any OPMN process requests such as start, stop or restart within an event script. These requests are serialized at the process-set
level. If the script invokes a request on a process-set
on which the current request (or another already queued request) is operating, then the script will hang until it times out.
path="path"
The path must specify either an executable program for which OPMN has execute permission, or a script file for which OPMN has both read and executable permission. $ORACLE_HOME
may be used.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
path
OPMN runs the specified script before stopping the associated process. The timeout for this script is the value configured for stopping the process itself. Any time consumed by the execution of this script counts towards the process stop timeout. If the script times out, any associated http request will fail. However, OPMN will proceed with stopping the process.
Be cautious when you execute any OPMN process requests such as start, stop or restart. These requests are serialized at the process-set
level. If the script invokes a request on a process-set
on which the current request (or another already queued request) is operating, then the script will hang until it times out.
path="path"
The path must specify either an executable program for which OPMN has execute permission, or a script file for which OPMN has both read and executable permission. $ORACLE_HOME
may be used.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
path
OPMN runs the specified script after the associated process has terminated unexpectedly. The timeout for this script is the timeout value configured for stopping the process itself. After the script has terminated OPMN schedules a replacement of the terminated process.
Be cautious when you execute any OPMN process requests such as start, stop or restart. These requests are serialized at the process-set
level. If the script invokes a request on a process-set
on which the current request (or another already queued request) is operating, then the script will hang until it times out.
path="path"
The path must specify either an executable program for which OPMN has execute permission, or a script file for which OPMN has both read and executable permission. $ORACLE_HOME
may be used.
OPMN will convert slashes in the path value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
timeout, retry
The start parameters for managed processes.
timeout="timeout"
120
The timeout value in seconds for the start of a managed process.
retry="num"
0
The number of consecutive attempts that will be made to start the process for a single request.
timeout
The stop parameters for managed processes.
timeout="timeout"
60
The timeout
value in seconds for the stopping a managed process.
<process-set>
timeout, retry
The restart
parameters for managed processes.
timeout="timeout"
180
The timeout
value in seconds for the restart of a managed process.
retry="num"
0
The number of consecutive attempts that will be made to restart the process for a single request.
,
<process-set>
timeout, retry, interval
The ping
parameters for managed processes.
timeout="timeout"
20
The timeout
value in seconds for the ping of a managed process. Each module specifies a ping timeout.
retry="num"
0
The number of consecutive ping failures that will be tolerated before the module declares the process unreachable and will restart it. Each module specifies ping retries.
interval="interval"
20
The interval
, in seconds, between each ping of a managed process.
id, range
OPMN provides a port management mechanism for modules to use. Each module uses the ports configured with id
.
id="id"
The id
attribute identifies the range of ports for the process-type
. Each module has its own list of required or optional port
ids.
range="range"
The port range
specifies which ports to use for the id
.
Upon request from a module for a port number from the id
, OPMN checks if a port in the range has been bound on the local system, and if it has not, it returns that port number back to the module. Syntax of the port range
is a comma separated list of individual port numbers or a low-high range specification.
Examples:
Specify ports 5555, 6666, 7777, 8888, and 9999:
range="5555,6666,7777,8888,9999"
Specify ports 4000 through 4250 (inclusive):
range="4000-4250"
Specify ports 7000 through 7049, 7775, 7785, and 8050 through 8099:
range="7000-7049,7775,7785,8050-8099"
id, restart-on-death, numprocs, status, working-dir, parallel-requests
A process-set
is the abstraction of a process within OPMN. All module-data
, environment variables, and other configuration parameters are resolved into their final values at the process-set
level.
id="process-set-id"
The id
attribute uniquely identifies this process-set
within the process-type
.
restart-on-death="boolean"
true
or false
If a managed process terminates unexpectedly, that is, not stopped by a request, then OPMN will not automatically restart it. To enable automatic restarting of terminated managed processes set the attribute to true
.
numprocs="num"
Specifies the number of processes for OPMN to start for this process-set
.
minprocs="min"
numprocs
is configured
Specifies the default number of processes for OPMN to start for this process set. If minprocs
is configured, then maxprocs
must be set with a value greater than or equal to the value for minprocs. If minprocs and maxprocs
are configured, a specific number of processes may be given in an OPMN request for this process set. This attribute may not be specified if numprocs
has been configured.
maxprocs="max"
The maxprocs
attribute must be specified if minprocs has been configured, but cannot be specified if numprocs has been configured.
status="state"
enabled
enabled
or disabled
A process-set
may be enabled
, in which case OPMN parses all of its configured attributes and elements and enables requests to operate upon it, or disabled
, in which case the process-set
entry is complete ignored and treated as if it were not even listed in opmn.xml
.
working-dir="path"
This path specifies the working directory set for the managed processes created that belong to this process-set
. $ORACLE_HOME
may be used.
OPMN will convert slashes in the working-dir
value string to be those of the directory path separator character for the system on which OPMN is running (on UNIX each \ character is converted to / and on Windows each / is converted to \).
OPMN uses the ^ character as an escape character to disable slash conversion for the following character, and so ^/ on a Windows system will yield a / in the string. Specify two ^ characters if you need to specify the ^ character in the resultant string: ^^ yields ^.
parallel-requests="boolean"
true
or false
OPMN serializes requests at the process-set level, such that only one request can execute on a given process-set at a time: each subsequent request must wait until the previous request completes before it can execute. This default behavior is disabled for a process-set when parallel-requests
is set to true
.
Note: When this attribute is enabled OPMN performs no serialization on requests for theprocess-set at all, which means conflicting requests may be issued and execute at virtually the same time, thus leaving processes in the process-set in unpredictable states; therefore when parallel-requests is set to true you must verify that conflicting requests are not issued at the same time for the process-set (this includes requests with implicit wild-cards for matching process-sets).
|