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 for the classic version of NexJ CRM (8.X releases) and the NJMDARequestStat table for the Application Foundation Layers (AFL) version of NexJ CRM (9.X releases). 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.
If you have disabled the Show stats button and you enable performance monitoring, the performance statistics are still saved to the database.
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:
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:
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 (classic version of NexJ CRM) and the NJMDARequestStat table (AFL version of NexJ CRM):
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 and NJMDARequestStat 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.