The Oracle Forms analyzer provides configuration settings to customize the monitoring of software services based on Oracle Application Server.
In the RUM Console, open the AMD Configuration window. Under Configuration, select Global ► Front-End Monitoring ► Oracle Forms ► General and tune the following Oracle Forms monitoring settings:
Generate ADS data for Oracle Forms traffic
Select this option to provide data to the report server that consists of low-level protocol information, such as raw HTTP traffic data, which enables you to view the full HTTP request-response dialog.
Oracle Forms Identification
This property defines a pattern used for identification of the session ID, which is required for Oracle Forms session recognition and stability.
You can find the session ID in the URL parameter of the POST request for a Forms servlet. Examples of a POST request for a Forms servlet include:
Typically the identifier name (note that this is not the ID value) required by the AMD is
JServSessionIdforms, as shown in the following graphic:
The default RUM Console setting is
The following parameters listed under User Recognition enable you to use a login user name as the basis for reporting.
Specify the request method for the login URL using one of the following methods:
GET or POST
Used for user login detection in web traffic. This setting defines an HTTP method in a request that contains a client username. The available values are:
POST, or no entry.
Used for user login detection in an Oracle Forms binary stream. Select this option to configure user detection based on Oracle Forms internal login. Selecting
OFLogin disables the Login URL parameter.
Used for user detection in an Oracle Forms 6i mixed environment where the user login exists in web traffic and the Oracle Forms session ID exists in a pure binary stream. To produce the user name of the Oracle Forms operation, add both the web server and all Oracle Forms servers when defining services in the software service rule configuration, as shown in the following graphic.
The web traffic contains the user login and ICX Ticket data, and the Forms binary traffic contains a corresponding ICX ticket, which is used to associate the user login contained in the web traffic with the data in the Oracle Forms binary stream:
Defines the URL in an HTTP request containing a client username.
For an HTTP-based login, the login URL is the base URL where the username value is found in the trace file.
For an Oracle Applications/EBS login, the login URL is typically
This field is redundant when extracting the user name directly from Oracle Forms traffic, so it is disabled if the OFLogin method is selected.
Login name parameter
This property is used for searching for a user name in HTTP requests.
For an HTTP-based login, this is the POST parameter key for the username found in the login URL. It typically has a value containing a username string.
For an Oracle Applications/EBS login, the username key is typically
For a Forms-based login, this is the label used for the username in the Forms login. Typically, this value is
Identification cookie pattern
This property helps to identify the cookie used for user assignment. Setting this properly helps AMD software match user names to TCP sessions.
For an HTTP-based login, this is the cookie key for a Forms session. Typically, it follows the
JSessionID cookie for the login URL in the capture file, and the same cookie key is also found in the POST request for the Forms servlet.
For an Oracle Applications/EBS login, the key is usually customized.
For a Forms-based login, this is the cookie key for a Forms session. Typically, it is
The sample login URL show the configuration parameters for the login URL, request method, user name parameter, and the key for the HTTP cookie for the Forms session.
Client IP Address Extraction
In a load balancer environment, requesting an IP address does not return the actual client IP address. To get the real client IP address, you must extract the real client IP address from one of the HTTP header fields used by a load balancer to forward the real client IP address. It is usually X-Forwarded-For. In this case, select the Header field option and type in the name of HTTP header field containing the real client IP information. For example
Use the Error Messages table to customize the configuration of error analysis and error message extraction in your environment. In this table, the ID column displays the error category ID and the Name column displays a regular expression that is applied against a recorded message to trigger an error count and save the error message for use in ADS.
If there are multiple error strings per operation, per category, per monitoring interval, just the first string is reported. Multiple error message filters can be assigned to the same or different error buckets.
By default, the following five categories are provided to help you identify the specific error type and corresponding error message. Each category has a corresponding ID, which is used in the Error Messages table to identify the category.
Table 1. Error Categories
Error Codes Provided by Default
Forms client error
Forms application error
Forms server error
Oracle server error
Oracle Applications error
For the Forms server error and Oracle server error categories, the actual error codes used to identify application availability problems are also specified by default in the Error Messages table, as shown in the following graphic:
For the remaining default error categories, you have the option of adding specific error codes in any of the categories. For a listing of suggested error codes and recommended regular expression syntax, see Oracle Forms Error Categories and Messages.
After configuring the Error Messages table, you must enable the availability of an error category on the Availability tab to view error message data in DMI reports. For more information, see Oracle Forms - Availability.
When you configure Oracle Forms monitoring, you are able to define operation time thresholds on several levels starting from general settings of the analyzer, through per software service, to a per individual operation level. Note that global setting Page load time/operation threshold is ignored for Oracle Forms monitoring.
The maximum time that a single operation should last. An operation with a longer execution time is regarded as unsuccessful or broken. Increase the value of this option if your Forms application response time is slow.
Default value: 1 second.
From what we saw in the real traffic, the default value should be suitable for most scenarios. We do not recommend decreasing it. Increasing it to two seconds could prove useful in some very rare cases. Oracle Forms protocol carries only basic UI updates and to assemble real user actions from this, AMD analysis needs to rely on heuristics, which makes the timeout value an important aspect in the process.
Session state timeout
How long (in seconds) a session ID is regarded as valid and recognized by the analyzer.
Default value: 28800 seconds (8 hours).
Max. length of property
The maximum length of a text string that is send in a binary Oracle Forms message.
Default value: 20000 bytes.
Operation Pattern Matching and Processing
Operation pattern matching may be the key to understanding and debugging your Web applications. Setting all the parameters related to this issue will enable better presentation of the data by the report server. With them, you can see the actual relations between particular components of your Web application.
Operation name pattern
Use this field to influence how the content of a transaction name is formed. This string must contain keywords that will be replaced with real values. They can be used in any order and separated by any characters. Note that these keywords are case sensitive.
The following keywords are supported:
%parentTitle%- window title of the previously active window
%resultTitle%- window title of the new window
%controlTitle%- the name of the control (for example, button's caption)
%className%- the type of the control (for example,
%propName%- action (for example, pressed)
%moduleName%- the name of the module in use
Use this setting to include a module's path or extension in reports. Note that this property is not part of the default configuration.
These settings make it possible to transform a parent title. An extended POSIX regular expression (entered in the Regex Pattern column) matches the parent title and allows the selection of only a part or parts of the title for further processing (using grouping subexpressions). Output Pattern describes how to assemble the pieces matched by Regex Pattern. This is a string that may contain back references (backslash character “\” followed by a non-zero decimal digit) to subexpressions matched and grouped in Regex Pattern.
The following setting removes everything from the
%parentTitle% from the “(” character to the end:
If the parent title were
Report Submission (RNO-975310), after this transformation you would have
Several instances of this property are allowed. Default: no action.
Similarly to %parentTitle% Processing, this property makes it possible to transform the new window's title. An extended POSIX regular expression (entered in the Regex Pattern column) matches the parent title and allows the selection of only a part or parts of the title for further processing (using grouping subexpressions). Output Pattern describes how to assemble the pieces matched by Regex Pattern. This is a string that may contain back references (backslash character “\” followed by a non-zero decimal digit) to subexpressions matched and grouped in Regex Pattern.
The following setting regroups
%resultTitle% components so that the requested strings appear first, although they are detected in a different order:
([^ ]*) ([^ ]*) ([^ ]*)(.*)
\3 \1 \2 \4
If the result title were
Request Submission Illegal x00AF, after the transformation you would have
RT:Illegal Work Request Submission x00AF.
Several instances of this property are allowed. Default: no action.
See Regular Expression Fundamentals to learn more on using regular expressions in Data Center Real User Monitoring configuration tasks.