Front-end monitoring - Oracle Forms

In the Oracle Forms section you set parameters for monitoring software services based on Oracle Forms. The settings include form identification, parsing and processing, as well as triggers and user recognition.

General

The Oracle Forms analyzer provides configuration settings to customize the monitoring of software services based on Oracle Application Server.

In the NAM Console, open the NAM Probe 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

Session identifier

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:

  • POST/forms/lservlet;
  • POST/forms/formsservlet;
  • POST/forms/I90servlet;

Typically the identifier name (note that this is not the ID value) required by the NAM Probe is jsessionid or JServSessionIdforms, as shown in the following graphic:

The default setting is jsessionid=.

User recognition

The following parameters listed under User Recognition enable you to use a login user name as the basis for reporting.

Login method

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: GET, POST, or no entry.

OFLogin

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.

ICXLogin

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.

Note

Another method for identifying user names for traffic data records that do not have an associated user name is to configure the NAM Server to map the monitored user's name between analyzers for a given client IP address.

Login URL

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 /OA_HTML/OA.jsp/ .

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

For a Forms-based login, this is the label used for the username in the Forms login. Typically, this value is username .

Identification cookie pattern

This property helps to identify the cookie used for user assignment. Setting this properly helps NAM Probe 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 JSessionID .

Default: JServSessionIdroot

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 X-Forwared-For.

Error messages

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.

Note

Error message strings only appear in the ADS if the global option Generate ADS data for Oracle Forms traffic is selected and the Generate ADS data option is selected on the Options tab at the software service level.

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 Category Error Codes Provided by Default
Forms client error No
Forms application error No
Forms server error Yes
Oracle server error Yes
Oracle Applications error No

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.

Note

For the syntax in the Name column, the ^ symbol indicates the match must occur at the start of a new line, and the | symbol is used as a delimiter between error codes.

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

Thresholds

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.

Operation timeout

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.

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, ButtonItem)
  • %propName% - action (for example, pressed)
  • %moduleName% - the name of the module in use

Default: %parentTitle%\t%resultTitle%\t%className%:%controlTitle%

Figure 1. Sample Oracle Forms operation name pattern recorded on the NAM Probe

 PT:Work Request Submission RT:Work Request Submission CT:Save CN:ButtonItem PN:pressed

%moduleName% Processing

Use this setting to include a module's path or extension in reports. Note that this property is not part of the default configuration.

%parentTitle% Processing

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:

Regex Pattern : (.+)\(

Output Pattern : \1

If the parent title were PT:Fiscal Report Submission (RNO-975310), after this transformation you would have PT:Fiscal Report Submission .

Several instances of this property are allowed. Default: no action.

%resultTitle% Processing

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:

Regex Pattern : ([^ ]*) ([^ ]*) ([^ ]*)(.*)

Output Pattern : \3 \1 \2 \4

If the result title were RT:Work 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 Network Application Monitoring configuration tasks.

Triggers

An Oracle Forms trigger defines properties that drive the transaction recognition algorithm.

Note

Trigger settings should remain unchanged and can be configured only by authorized Compuware engineers.

Oracle Forms triggers are a predefined set of mappings of GUI elements and their properties (state, actions, and behavior). This mapping is a definition of what is understood as a single operation. Control over triggers makes it possible to exclude insignificant GUI actions from being reported (for example, a window getting focus or a tooltip being displayed for a button). You can define whether setting particular properties for some classes is considered a user action or just setting the screen title.

You can inspect the mappings in the NAM Console in the NAM Probe Configuration window. For this purpose, go to Global ► Front-End Monitoring ► Oracle Forms ► Triggers. Although each of the tables allows you to add, edit, or delete property mappings, we recommend that you use default values.

The tables Class map and Property map should help you decipher the binary part of Oracle Forms traffic. The ID column contains the binary representation that is actually passed in network traffic. Its human-readable name is contained in the Name column. These names are later used and transformed by the NAM Probe and finally the report server.

Availability

To view information about Oracle Forms failures in DMI reports, access the Forms Availability tab and configure the appearance of a specific failure type in a DMI report.

You can configure Oracle Forms availability globally or at the software service level.

For global configuration, open the NAM Probe configuration and go to Global  ► Front-End Monitoring  ► Oracle Forms  ► Availability. For the software service level, select the Availability tab in the Edit Rule window.

To view information about system, application, and environment failures in DMI reports, you must enable the appearance of a specific failure type, as described in the following list:

Transport failures

No response

Incomplete response. A hit with no response from a server. Disabled by default.

Aborted response

A response aborted by the user. Enabled by default.

HTTP errors

The NAM Probe is able to deliver information on seven HTTP error groups (“categories”).

  • HTTP client errors (4xx)
  • HTTP server errors (5xx)
  • HTTP unauthorized errors
  • HTTP Not Found errors
  • HTTP client errors (category 3)
  • HTTP server errors (category 1)
  • HTTP server errors (category 2)

You can decide whether each of these should be taken into account when calculating (failures transport). Note that HTTP client errors (4xx), HTTP server errors (5xx), HTTP unauthorized errors, HTTP Not Found errors, and HTTP server errors (category 1) have configurable contents. For more information, see Web - Errors.

Application failures

Forms client error

Not enabled by default.

Forms application error

Not enabled by default.

Forms server error

Enabled by default.

Oracle server error

Enabled by default.

Oracle Applications error

Not enabled by default.

Fault domain isolation

Use the following threshold settings to accurately identify the true source of the problem:

  • Server time threshold
    This relates to the server time portion of an overall operation time. Server times above the threshold limit are considered to be slow due to poor data center performance.
  • Idle time threshold
  • Network time threshold
  • Retransmissions threshold
    Network time affected by high retransmission threshold
  • Request size threshold Network time affected by the transfer of a big request threshold
  • Response size threshold
    Network time affected by the transfer of a big response threshold
  • Number of hits threshold
  • Single hit duration threshold
  • Rtt threshold