This documentation supports the 20.02 version of Remedy Action Request (AR) System.

To view an earlier version, select the version from the Product version menu.


Collecting ARAPI logs for Remedy Mid Tier

The ARAPI logs help to troubleshoot the situation where you need to determine the action that might have caused the error or the delayed response. BMC Support might request a copy of this log. 

Advantages of collecting ARAPI logs 

  • Works for all windows clients, the ODBC driver, and API programs that use the arapinn.dll such as the mid tier.
  • Captures all API commands issued by the client. 
  • Captures data returned to an API call by the server. 
  • Helps investigating incorrect data problems


When ARAPI logs are enabled, the client logs each API call along with the server response in the clientInstallDir\arapires.log file, by default located in the webserver_install_dir/bin folder. If bit 16 is not set, client calls are recorded separately in clientInstallDir\arapicmd.log file.

When you restart the client, a new log is created. Previous logs are saved with a sequential number appended to the name. For example, arapires_1.logarapires_2.log. For more information, see Setting log files options.

Warning

To avoid unnecessary consumption of disk space, do not leave ARAPILOGGING turned on indefinitely.

To enable ARAPI logs 

  1. If you have Preload enabled on any AR System server defined in Remedy Mid Tier Configuration Tool, disable it to configure ARAPI logging.
  2. Stop the JSP Engine.
    For example, Apache Tomcat, IBM Websphere, or JBoss
  3. Copy and rename the arsys_sample.xml file from the <Midtier>\WEB-INF\lib\arsys_sample.xml folder
    to the
    <Midtier>WEB-INF\classes\arsys_api.xml 
    folder
  4. Edit the arsys_api.xml file and modify the following line:

    <apiRecording>0</apiRecording> 

    to 

    <apiRecording>24</apiRecording>
  5. Modify the following line

    <apiRecordingLogDir></apiRecordingLogDir>

    to

    <apiRecordingLogDir>/path/to/store/logs</apiRecordingLogDir>

    where the /path/to/store/logs is a valid directory path on the mid tier.   
    For example 

    • c:\temp  
      or
    •  /tmp/logs
  6. Restart the JSP engine
  7. Reproduce the issue.
  8. Send the following logs to BMC Support:
    • Service<ARSERVER>#_arapires.log
    • <User><ARserver#_arapires.log
    These logs are available in the directory path specified on the apiRecordingLogDir path.
  9. Collect all mid tier logs generated after the restart of the JSP Engine.

To disable ARAPI logs

  1. Stop the JSP Engine.
  2. Rename the arsys_api.xml file to arsys_api.xml-arapilogging file.
  3. Restart the JSP Engine.
  4. Turn on Preload in the AR Server Settings in the Mid Tier Configuration Tool if you had previously turned it off.

Setting the apiRecording parameter 

You can set the value of the <apiRecording> parameter in the arsys_api.xml file, located in the <Midtier>WEB-INF\classes\ folder to control how the information is logged.

For example, <apiRecording>24</apiRecording>

This option uses a bit mask to control the log output. You can combine the values to get combined results in the log. 

The following table describes the bit mask values of the apiRecording parameter:

Bit mask value

Description

0No logging.
Setting 
<apiRecording> to 0 or not setting it at all turns ARAPI logging off.

1

The ARAPI logging is on, and the minimum output is recorded in the arapicmd.log and arapires.log files. If other bit mask options such as, 8 or 16 are included, this option need not to be included in the bit mask.

2

Record in append mode.

4

Record start and finish times. Record the start and end time of each API call.

8

Record elapsed time in milliseconds for the result file.

The elapsed time includes the time needed for the API to write information to the log file.

16

Combine the command and result files into one result file.

In this case, client commands and server replies are all recorded in the arapires.log file. The arapicmd.log file is not created. This output is most convenient to use because the client commands and server responses are collated.

Warning:

Do not use this option if you are building a command file to be played back in driver.

32

Do not record result data output.

This option suppresses the output of the result data, limiting the result output to status information only.

This option is useful when the quantity of result data is very large and the output can impact performance. This option is also useful to reduce the amount of logging information when the details of the data returned are not important.

64

Buffer the file output.

Utilizes file system buffering to write log output. It can be used to reduce the time required to output the logging information. However, you might lose information if the client you are collecting logging information crashes before all information is written to the log.

We recommend setting ARAPILOGGING to 31.

Setting <apiRecording>31</apiRecording> (8+16+4+1) ,adds start, finish, and elapsed time to log (8) and combines the commands and results in arapires.log (16).  In addition, setting the value to 24 adds the user name, server name, and the port number to the output described in this section.

This is helpful when you need to use ARAPI log in a multi-user or multi-server environment. 

Related topic

Remedy Mid Tier logging

Was this page helpful? Yes No Submitting... Thank you

Comments