Skip Headers
Oracle® Process Manager and Notification Server Administrator's Guide
10g Release 2 (10.1.2)
B13996-02
  Go To Documentation Library
Home
Go To Product List
Solution Area
Go To Table Of Contents
Contents
Go To Index
Index

Previous
Previous
Next
Next
 

3 opmn.xml Common Configuration

This chapter provides common configuration examples, and descriptions of elements and attributes for the OPMN opmn.xml file.

It contains the following topics:

3.1 Example of opmn.xml Elements and Attributes

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>

3.2 opmn.xml Element and Attribute Descriptions

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.

<opmn>


Required: true
Default: none
Parents: none
Attributes: none

Top-level element for opmn.xml

<notification-server>


Required: true
Default: none
Parents: <opmn>
Attributes: none

Configures or, contains elements to configure the ONS portion of OPMN.

<ipaddr>


Required: true
Default: none
Parents: <notification-server>
Attributes: remote, request

Specifies host information for ONS listener threads and host port bindings.

   remote="ip"

Required: false
Default: none
Valid Values: IP address (in ###.###.###.### format) or host name to which ONS will bind its remote port.

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"

Required: false
Default: none
Valid Values: IP address (in ###.###.###.### format) or host name to which ONS will bind its request port.

IP address or host name to which ONS will bind its remote port. This port can only be used for obtaining status information (DMS).

<port>


Required: true
Default: none
Parents: <notification-server>
Attributes: local, remote, request

Configuration of the port information for ONS listener threads host and port bindings.

       local="port"

Required: true
Default: none
Valid Values: A port number.

ONS local port value.

   remote="port"

Required: false
Default: none
Valid Values: A port number.

ONS remote port value.

      request="port"

Required: false
Default: none
Valid Values: A port number.

ONS request port value.

<log-file>


Required: true
Default: none
Parents: <notification-server>
Attributes: path, level, rotation-size, rotation-hour

Configuration definitions for the ONS log mechanism.

       path="path"

Required: true
Default: none
Valid Values: A file name path for the ONS log file.

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"

Required: true
Default: none
Valid Values: An integer value of 0 through 9.

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"

Required: false
Default: none
Valid Values: An integer.

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"

Required: false
Default: none
Valid Values: An integer value of 0 through 23.

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.

<ssl>


Required: false
Default: none
Parents: <notification-server>
Attributes: enabled, wallet-file, wallet-password

ONS to ONS security and authentication configuration.

       enabled="boolean"

Required: true
Default: none
Valid Values: true or false

If the value is true, enables SSL for ONS.

   wallet-file="path"

Required: false
Default: none
Valid Values: A path to an Oracle wallet.

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"

Required: false
Default: none
Valid Values: A string for the wallet password.

The password string for the specified wallet.

<process-manager>


Required: true
Default: none
Parents: <opmn>
Attributes: insecure-remote-requests

The process-manager contains the configuration definitions for the PM portion of OPMN.

   insecure-remote-requests="boolean"

Required: false
Default: false
Valid Values: 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 to true 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.

<log-file>


Required: true
Default: none
Parents: <process-manager>
Attributes: path, level, rotation-size, rotation-hour

Configuration definitions for the PM log mechanism.

       path="path"

Required: true
Default: none
Valid Values: A file name path for the PM log file.

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"

Required: true
Default: none
Valid Values: An integer value of 0 through 9.

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"

Required: false
Default: none
Valid Values: An integer.

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"

Required: false
Default: none
Valid Values: An integer value of 0 through 23.

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.

<process-modules>


Required: true
Default: none
Parents: <process-manager>
Attributes: none

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.

<module>


Required: true
Default: none
Parents: <process-modules>
Attributes: 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"

Required: true
Default: none
Valid Values: A path for the module shared library.

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"

Required: false
Default: The value specified by path.
Valid Values: A string uniquely identifying the module.

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"

Required: false
Default: enabled
Valid Values: 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"

Required: false
Default: none
Valid Values: An integer.

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.

<module-data>


Required: false
Default: none
Parents: <module>, <ias-instance>, <ias-component>, <dependencies>, <process-set>
Attributes: none

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

ias-instance

<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>

<category>


Required: true
Default: none
Parents: <module-data>
Attributes: id

The category is an organizational level within a module-data block.

       id="id"

Required: true
Default: none
Valid Values: A string.

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.

<data>


Required: true
Default: none
Parents: <category>
Attributes: id, value, process-conversion

A data name value definition within a module-data category.

       id="id"

Required: true
Default: none
Valid Values: A string.

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"

Required: true
Default: none
Valid Values: A string.

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"

Required: false
Default: true
Valid Values: 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 ^.

<module-id>


Required: true
Default: none
Parents: <module>
Attributes: 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"

Required: true
Default: none
Valid Values: A string.

<ias-instance>


Required: true
Default: none
Parents:<process-manager>
Attributes: 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"

Required: true
Default: none
Valid Values: A string.

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"

Required: true
Default: none
Valid Values: A path string.

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 ^.

<environment>


Required: true
Default: Refer to the following paragraph.
Parents:<ias-instance>, <ias-component>, <dependencies>, <process-set>
Attributes: none

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 the ias-instance level, with the values extracted either from the ias-instance configuration or from the OPMN run time environment:

UNIX: ORACLE_HOME, ORACLE_NLS, OPMN_ENV_LC_ALL, OPMN_ENV_LANG, OPMN_ENV_NLS_LANG, SHELL

Windows: COMSPEC, SYSTEM_DRIVE, and SYSTEM_ROOT


<variable>


Required: true
Default: none
Parents: <environment>
Attributes: id, value, append, process-conversion

The environment variable name and value are defined with this element.

       id="name"

Required: true
Default: none
Valid Values: A string.

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"

Required: true
Default: none
Valid Values: A string.

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"

Required: false
Default: false
Valid Values: 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"

Required: false
Default: true
Valid Values: 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 ^.

<ias-component>


Required: true
Default: none
Parents:<ias-instance>
Attributes: id, id-matching, status

An ias-component is a logical grouping of process-type for administrative purposes.

       id="component-id"

Required: true
Default: none
Valid Values: a string

The id attribute uniquely identifies this ias-component within the ias-instance.

   id-matching="boolean"

Required: false
Default: false
Valid Values: 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"

Required: false
Default: enabled
Valid Values: 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.

<dependencies>


Required: false
Default: none
Parents: <ias-component>, <dependencies>, <process-set>
Attributes: none

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.

<database>


Required: false
Default: none
Parents: <dependencies>
Attributes: 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"

Required: true if infrastructure-key is not specified.
Default: none
Valid Values: A string

The string required to connect to the database.

       infrastructure-key="key"

Required: true if db-connect is not specified.
Default: none
Valid Values: A string

The infrastructure key required to identify the database.

       timeout="depend-timeout"

Required: false
Default: 1200
Valid Values: An integer

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"

Required: false
Default: 600
Valid Values: An integer

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.

<OID>


Required: false
Default: none
Parents:<dependencies>
Attributes: 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"

Required: true
Default: none
Valid Values: A string

The address string required to connect to Oracle Internet Directory.

       infrastructure="boolean"

Required: true if address is not set.
Default: none
Valid Values: true or false

Use the default infrastructure Oracle Internet Directory for this Oracle Application Server instance.

       timeout="depend-timeout"

Required: false
Default: 1200
Valid Values: An integer

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"

Required: false
Default: 600
Valid Values: An integer

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.

<ssl>


Required: false
Default: none
Parents: <OID>
Attributes: enabled, wallet-file, wallet-password

The SSL information for the Oracle Internet Directory connection.

   enabled="boolean"

Required: true
Default: none
Valid Values: true or false

To enable SSL on the Oracle Internet Directory connection, set this attribute to true.

   wallet-file="path"

Required: false
Default: none
Valid Values: A 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"

Required: false
Default: none
Valid Values: A string

The password for the specified wallet-file.

       timeout="depend-timeout"

Required: false
Default: 1200
Valid Values: An integer

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"

Required: false
Default: 600
Valid Values: An integer

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.

<OSSO>


Required: false
Default: none
Parents: <dependencies>
Attributes: host, port, URI, timeout, cache-timeout

Specifies the OracleAS Single Sign-On (OSSO) service to check.

       host="hostname"

Required: true
Default: none
Valid Values: A string

The hostname for the OracleAS Single Sign-On connection.

       port="port"

Required: true
Default: none
Valid Values: A port number

The port for the OracleAS Single Sign-On connection.

       URI="uri"

Required: true
Default: none
Valid Values: A string

The URI for the OracleAS Single Sign-On connection.

<ssl>


Required: false
Default: none
Parents: <OSSO>
Attributes: enabled, wallet-file, wallet-password

The SSL information for the OracleAS Single Sign-On connection.

       enabled="boolean"

Required: true
Default: none
Valid Values: true or false

To enable SSL on the OracleAS Single Sign-On connection, set this attribute to true.

   wallet-file="path"

Required: true
Default: none
Valid Values: A 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"

Required: false
Default: none
Valid Values: A string

The password for the specified wallet-file.

       timeout="depend-timeout"

Required: false
Default: 1200
Valid Values: An integer

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"

Required: false
Default: 600
Valid Values: An integer

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.

<managed-process>


Required: false
Default: none
Parents: <dependencies>
Attributes: 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"

Required: false
Default: The ias-instance of the current process-type or process-set.
Valid Values: A string

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"

Required: true
Default: none
Valid Values: A string

The ias-component for the managed process dependency.

       process-type="process-type-id"

Required: true
Default: none
Valid Values: A string

The process-type-id for the managed process dependency.

       process-set="process-set-id"

Required: true
Default: none
Valid Values: A string

The process-set-id for the managed process dependency.

       autostart="boolean"

Required: false
Default: false
Valid Values: true or false

If the managed process dependency is not running when the check is performed, attempt to start it.

       autostop="boolean"

Required: false
Default: false
Valid Values: 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"

Required: false
Default: 1200
Valid Values: An integer

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"

Required: false
Default: 600
Valid Values: An integer

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:

The cache-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>


Required: true
Default: none
Parents: <ias-component>
Attributes: 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"

Required: true
Default: none
Valid Values: a string

The id attribute uniquely identifies this process-type within the ias-component.

       module-id="module-id"

Required: true
Default: none
Valid Values: a string

The module-id attribute must map directly map to the module-id element that supports this process-type.

   status="state"

Required: false
Default: enabled
Valid Values: 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"

Required: false
Default: None
Valid Values: A 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-scripts>


Required: false
Default: none
Parents: <process-type>, <process-set>
Attributes: none

A configured 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 shows event script arguments.

Table 3-2 Event Script Arguments

Option Name Option Argument Description

-timeStamp

<time>

An integer value for the current time on the system (in seconds).

-instanceName

<instance-name>

The instance-name of the managed process.

-componentId

<component-id>

The component-id of the managed process.

-processType

<process-type-id>

The process-type of the managed process.

-processSet

<process-set-id>

The process-set of the managed process.

-processIndex

<index>

The process-index of the managed process.

-stderFoot 1 

<path>

The path for the stderr file pointer of the process.

-stdoutFootref 1

<path>

The path for the stdout file pointer of the process. Note: this argument will only be given for a pre-start script if the start is part of a process restart request.

-reason

<reason>

A string indicating the reason script was executed. The http_request indicates the process action is the result of the user http request to OPMN. The non_http_request indicates the process action was initiated by OPMN itself.

-pidFoot 2 

<process-id>

The operating system integer value given for the process-id.

-startTimeFootref 2

<time>

An integer value for the system start time of the process (in seconds).


Footnote 1 This argument will only be given for a pre-start script if the start is part of a process restart request. The pre-start event is triggered only prior to performing a start. A restart operation may be composed of a stop operation followed by a start operation. A start operation can occur as an operation all by itself or as a sub-operation of a restart.
Footnote 2 This argument is only available with pre-stop or post-crash event scripts.

<pre-start>


Required: false
Default: none
Parents: <event-scripts>
Attributes: 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"

Required: true
Default: none
Valid Values: A path to the executable script.

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 ^.

<pre-stop>


Required: false
Default: none
Parents: <event-scripts>
Attributes: 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"

Required: true
Default: none
Valid Values: A path to the executable script.

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 ^.

<post-crash>


Required: false
Default: none
Parents:<event-scripts>
Attributes: 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"

Required: true
Default: none
Valid Values: A path to the executable script.

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 ^.

<start>


Required: false
Default: Refer to the values in the following paragraphs.
Parents: <process-type>, <process-set>
Attributes: timeout, retry

The start parameters for managed processes.

   timeout="timeout"

Required: false
Default: 120
Valid Values: An integer

The timeout value in seconds for the start of a managed process.

       retry="num"

Required: false
Default: 0
Valid Values: An integer

The number of consecutive attempts that will be made to start the process for a single request.

<stop>


Required: false
Default: Refer to the values in the following paragraphs.
Parents: <process-type>, <process-set>
Attributes: timeout

The stop parameters for managed processes.

       timeout="timeout"

Required: false
Default: 60
Valid Values: An integer

The timeout value in seconds for the stopping a managed process.

<restart>


Required: false
Default: Refer to the values in the following paragraphs.
Parents: <process-type>, <process-set>
Attributes: timeout, retry

The restart parameters for managed processes.

       timeout="timeout"

Required: false
Default: 180
Valid Values: An integer

The timeout value in seconds for the restart of a managed process.

       retry="num"

Required: false
Default: 0
Valid Values: An integer

The number of consecutive attempts that will be made to restart the process for a single request.

<ping>


Required: false
Default: Refer to the values in the following paragraphs.
Parents: <process-type>, <process-set>
Attributes: timeout, retry, interval

The ping parameters for managed processes.

   timeout="timeout"

Required: false
Default: 20
Valid Values: An integer

The timeout value in seconds for the ping of a managed process. Each module specifies a ping timeout.

   retry="num"

Required: false
Default: 0
Valid Values: An integer

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"

Required: false
Default: 20
Valid Values: An integer

The interval, in seconds, between each ping of a managed process.

<port>


Required: false
Default: none
Parents: <process-type>, <process-set>
Attributes: id, range

OPMN provides a port management mechanism for modules to use. Each module uses the ports configured with id.

       id="id"

Required: true
Default: none
Valid Values: A string

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"

Required: true
Default: none
Valid Values: A port 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"

<process-set>


Required: true
Default: none
Parents: <process-type>
Attributes: 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"

Required: true
Default: none
Valid Values: A string

The id attribute uniquely identifies this process-set within the process-type.

       restart-on-death="boolean"

Required: false
Default: true
Valid Values: 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"

Required: true
Default: none
Valid Values: An integer

Specifies the number of processes for OPMN to start for this process-set.

       minprocs="min"

Required: true unless numprocs is configured
Default: none
Valid Values: An integer

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"

Required: true if minprocs is configured; otherwise false
Default: none
Valid Values: An integer

The maxprocs attribute must be specified if minprocs has been configured, but cannot be specified if numprocs has been configured.

       status="state"

Required: false.
Default: enabled
Valid Values: 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"

Required: false.
Default: None
Valid Values: A 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"

Required: false
Default: false
Valid Values: 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 the process-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).