Checking client timeouts on AR Server

In ARS8.1 Service Pack 2 is new feature for monitoring timeouts.

The BMC Remedy AR System server adds exception logging to the API and SQL server statistics feature. This feature provides additional options for managing API and SQL performance statistics. The key additions are:

  • A new log file, arexception.log, is the repository for all exception-logging activity. The arexception.log file is managed like the arerror.log file.
  • API calls that reach the server and are not completed before the client times out are logged to arexception.log. A client timeout server event is also available that allows client timeouts to be detected through server workflow.
  • API and SQL calls that exceed the defined minimum time threshold are logged immediately to arexception.log if the exception-logging option is enabled.

You enable exception logging for the performance statistics feature on the Server Statistics tab of the Administration Server form by selecting Enable Exception Logging in the API/SQL Performance Tracking form.

Server Statistics tab

The Server Recording Mode determines what information is recorded in the server statistics form. The values are:

  • 0 — (Default) Recording is off.
  • 1 — The server records only cumulative queue statistics (the sum of all the individual queue statistics).
  • 2 — The server records both cumulative and individual queue statistics. One entry is written for the cumulative statistics and a separate entry is written for each queue.

The Recording Interval is at which the server records server statistics. The default is 60 seconds.

a server event entry is created that provides information about the API call that experienced the timeout. Client timeouts can be detected with server event workflow, which provides expanded capabilities for communicating with administrators and users. For example, if a long-running API call caused a client timeout, server event workflow could email the affected user and notify the administrator about the details of the timeout.

You enable server event support for client timeouts by selecting Client Timeout on the Server Events tab of the Admin Console:

The information provided in the Server Event form is tailored to notifications, with fields that can be easily used in the qualification and as substitution parameters in the notification text. For more information, see Types of events you can record and Viewing client timeout server event details

Server event workflow

The standard BMC Remedy AR System does not include server event workflow, and the client timeout feature does not provide workflow with the form. The administrator must create the server event workflow. The following figure shows an example of the filter workflow an administrator might use to be notified of a user timeout:

Example of timeout in arexception.log. Servers gets “busy” notification and developer was not able to connect.

[<API > <TID: 0000000772> <RPC ID: 0000001374> <Queue: Admin> <Client-RPC: 390600> <USER: xxx> <Overlay-Group: 1> /* Tue Mar 22 2016 14:54:45.7690 */+GSI    ARGetServerInfo -- as user UB00073 from Developer Studio (protocol 20) at IP address 10.119.200.109  // :q:124.9s]
[<API > <TID: 0000000772> <RPC ID: 0000001374> <Queue: Admin> <Client-RPC: 390600> <USER: xxx> <Overlay-Group: 1> /* Tue Mar 22 2016 14:54:45.7691 */-GSI FAIL -- RPC Client has timed out]

I thinks that this feature is very useful for admins, because you can monitor developers and users on MT and everything via API.

[source]