NexJ Logo

Enabling client performance metrics

Client performance metrics provide detailed information on browser-to-server requests in log files. Client performance metrics persist in the NJRequestStat table. A database administrator can query the database to retrieve metrics.

Use client performance metrics to identify network and environment issues in your NexJ deployment. Client performance metrics help application developers and quality assurance analysts understand potential performance bottlenecks, detect performance regressions, and investigate environment issues such as database performance.

You can enable client performance metrics for individual users or for all users in the system. You enable client performance metrics for an individual user by assigning the ClientActivityMonitor privilege to the user. You enable client performance metrics for all users in the system on the Statistics page in NexJ System Admin Console.

Enabling client performance metrics for individual users

You enable client performance metrics for an individual user by adding the user to a privilege group that has been granted the ClientActivityMonitor privilege.

You can either create a new privilege group or add the privilege to an existing group. This example explains how to create a new privilege group that you can add a user to when you want to enable client performance metrics for them.

To enable client performance metrics for an individual user:

  1. In NexJ Admin Console, navigate to the User page.
  2. In the Privilege Groups tab, create a new privilege group, for example, gIndividualPerformanceMetrics.
  3. In the Detail tab, click the Select button  in the Privileges zone. The Select Privileges dialog opens.
  4. Select the ClientActivityMonitor privilege from the list of available privileges on the left side of the dialog and click Add.
  5. Click OKThe Select Privileges dialog closes.
  6. In the Users tab, add the user to the new privilege group that you created.

You have enabled client performance metrics for the specified user.

Enabling client performance metrics for the system

You enable client performance metrics for all users in the system on the Statistics page in NexJ System Admin Console.

To enable client performance metrics for the system:

  1. In NexJ System Admin Console, navigate to the Statistics page.
  2. In the Statistics list, expand the node for your NexJ application, then select AdministrationConfiguration options for statistics display in the details area.
  3. Beside Client Activity Monitoring Enabled in the details area, double-click in the Value column. A text entry field displays.
  4. To enable logging, enter YLogging is enabled for the system.

    You can disable logging by entering N.

    You have enabled client performance metrics for all users in the system.

Interpreting client performance metrics

View client performance metrics to diagnose network and environment issues in your deployment.

The following information is stored in the NJRequestStat table:

Request start time

The time on the client when the request was made to the server in milliseconds. A value of -1 indicates that the request start time could not be retrieved.

Username

The user name of the current user.

User IP

The IP or hostname of the current user.

Application ID

The ID of the current application instance.

Session ID

The ID of the session associated with the request.

Log time

The time the current entry was processed for logging on the server.

Portlet name

The name of the portlet from which the request originated.

Screen name

The name of the screen associated with the portlet from which the request originated.

Active control

The name of the control that triggered a request. A null value indicates no active control. In some cases, the active control may include a base control and its subcontrol, for example, for a menu that contains several menu items.

Popup level

An integer value that represents the popup level from which the request was made, relative to the base popup. A value of -1 indicates no popup, 0 indicates the base popup, and 1 indicates the first nested popup. Values greater than one indicate further nested popup levels.

The following metrics are stored in the NJRequestStat table:

Total request time

The sum of the network, server, and JavaScript execution time in milliseconds.

Network time

The network processing time in milliseconds.

Since there is no way to determine when GET requests originated, the Network value of GET requests is set to N/A (not available).

Browser (JS) time

The time the JavaScript took to process the response in milliseconds.

Server time

The time it took for the server to handle the request in milliseconds.

SOA count/depth

The number of SOA calls made to the server and maximum call depth reached by any single call.

SQL count

The number of SQL queries the server made while handling the request.

Lazy load

The number of lazy loads the server did while handling the request.

Configuring privilege groups