RDC Log Files

RDC has the following log files:

Note:

By default, middleware_home is C:\app\oracle\middleware.

OpaServer1 is the name of the WebLogic Server instance that is created when installing Oracle Clinical Front End.

File Description Location Needs Debug Parameter in URL?

WebLogic Server logs

Set in logging.xml; see Editing the logging.xml file for Debugging

No

RDC application logs

Surround and Data Entry Java log files created by WebLogic Server

Set in logging.xml; see Editing the logging.xml file for Debugging

Yes; see Editing the URL for Debugging

RDC DCAPI (data entry) logs

Three per data entry session. See Data Capture API (DCAPI) Logs

Set in rdcConfig.properties; see List of Parameters to Use in the rdcConfig.properties File

Yes; see Editing the URL for Debugging

DCAPI framework logs

Launching and managing data entry sessions (DCAPI instances). See Data Capture API (DCAPI) Framework Logs

Set in rdcConfig.properties; see List of Parameters to Use in the rdcConfig.properties File

Yes; see Editing the URL for Debugging

OpaServer1.out, OpaServer1.log, and OpaServer1-diagnostic.log

See Locating the WebLogic Server Log Files

middleware_home\user_projects\domains\OPADomain\servers\OpaServer1\logs

No

${weblogic}-rdc_1.log (for example, OpaServer1-rdc_1.log

For activity in the application pages, RDC records all logs against a user identifier that consists of the user name, the database, and the HTTP session ID. See RDC Application Pages Log Files

middleware_home\user_projects\domains\OPADomain\config\fmwconfig\servers\OpaServer1\logs \

No

${weblogic}-de_1.log (for example, OpaServer1-de_1.log)

For activity in the data entry pages, RDC records all logs against a user identifier that consists of the user name, the database, and the HTTP session ID. See RDC Data Entry Window Log Files

C:\app\oracle\middleware\user_projects\domains\OPADomain\servers\OpaServer1\log

No

access_log

RDC automatically creates these files and continuously collects debug information.

middleware_home\user_projects\domains\OPADomain\servers\host_name_OPA_instance_no\logs\access.log

No

error_log

RDC automatically creates these files and continuously collects debug information.

middleware_home\user_projects\domains\OPADomain\servers\host_name_OPA_instance_no\logs\access.log

No

For more information, see:

Locating the WebLogic Server Log Files

The WebLogic server by default records logs for all deployed applications. You use the following log files when debugging errors:

  • OpaServer1-diagnostic.log
  • OpaServer1.log
  • OpaServer1.out

Note:

OpaServer1 is the name of the WebLogic server instance that is created when installing the Oracle Clinical Front End.

RDC stores these log files in the following directory on the application server:

middleware_home\user_projects\domains\OPADomain\servers\host_name_OPA_instance_no\logs

Setting Up Debugging

In this section:

Editing the logging.xml file for Debugging

In order to enable the debug information for the errors that occur when using any RDC application page, the Data Entry window or both, the logging.xml file needs to be updated as follows.

Go to the following location:

middleware_home\user_projects\domains\OPADomain\config\fmwconfig\servers\OpaServer1

Open logging.xml, the logging configuration file and insert the following:

 <?xml version='1.0' encoding='UTF-8'?>
 <logging_configuration>
 <log_handlers>
 ..
 ..
  <log_handler name='rdchandler'
 class='oracle.core.ojdl.logging.ODLHandlerFactory'
 filter='oracle.dfw.incident.IncidentDetectionLogFilter'>
    <property name='path'
 value='${domain.home}/servers/${weblogic.Name}/logs/${weblogic.Name}-rdc_1.log'/>
    <property name='maxFileSize' value='10485760'/>
    <property name='maxLogSize' value='104857600'/>
    <property name='encoding' value='UTF-8'/>
    <property name='useThreadName' value='true'/>
    <property name='supplementalAttributes' value='J2EE_MODULE.name,composite_name,component_name'/>
   </log_handler>
   <log_handler name='dehandler'
 class='oracle.core.ojdl.logging.ODLHandlerFactory'
 filter='oracle.dfw.incident.IncidentDetectionLogFilter'>
    <property name='path'
 value='${domain.home}/servers/${weblogic.Name}/logs/${weblogic.Name}-de_1.log'/>
    <property name='maxFileSize' value='10485760'/>
    <property name='maxLogSize' value='104857600'/>
    <property name='encoding' value='UTF-8'/>
    <property name='useThreadName' value='true'/>
    <property name='supplementalAttributes' value='J2EE_MODULE.name,composite_name,component_name'/>
   </log_handler>
 ..
 ..
 </log_handlers>
 <loggers>
 ..
 ..
   <logger name='oracle.pharma.rdc.logging' level='ALL'
 useParentHandlers='false'>  
    <handler name='rdchandler'/>
   </logger>
   <logger name='oracle.pharma.rdc.de' level='ALL'
 useParentHandlers='false'>  
    <handler name='dehandler'/>
   </logger>
 ..
 ..
 </loggers>
 </logging_configuration>

For more information on how to configure the WebLogic server logs, see the Oracle Clinical Administrator's Guide.

For more information about Oracle WebLogic Server, see https://docs.oracle.com/en/middleware/fusion-middleware/weblogic-server/12.2.1.4/.

Editing the URL for Debugging

You can collect debug information for errors that occur when using any of the RDC application pages and when using the Data Entry window.

To collect this debug information, add the &debug parameter to your URL that starts the RDC application:

&debug=module-name

where module-name defines the type of debugging you want.

Valid entries for module-name:

  • surround (only debug errors pertaining to the RDC application pages, such as the Home page, Casebooks page, Review CRFs page, PSDV page, etc.)
  • de (only debug errors pertaining to the RDC Data Entry window)
  • all (debug errors pertaining to both the RDC application pages and the Data Entry window)

General format of the URL:

https://server.domain/rdcadfsrnd/faces/Login?setUpDone=Y&debug=module-name

Examples:

https://pharma.company.com/rdcadfsrnd/faces/Login?setUpDone=Y&debug=de

https://pharma1.usa.atlantic.com/rdcadfsrnd/faces/Login?setUpDone=Y&debug=all

On using application with debug turned on (setUpDone=Y&debug=module), the debug logs would be created in the in the application_path\log defined in the rdcConfig.properties file.

Note:

If a path is not specified for application_path, the default location used is OPA_HOME/log. e.g. C:\opapps54\log

Types of Log Files

In this section:

RDC Application Pages Log Files

Locate and check the ${weblogic.Name}-rdc_1.log log files for the application pages.

RDC records all logs against a user identifier that consists of the user name, the database, and the HTTP session ID.

You can locate all the log entries for the user for a particular RDC session by searching for the HTTP session ID in the log file. The HTTP session ID is the alphanumeric string that follows the user@database information in the <MSG_TEXT> tag.

RDC Data Entry Window Log Files

RDC records all logs against a user identifier that consists of the user name, the database, and the HTTP session ID.

To review the information in the data entry logs:

  1. Locate and check the ${weblogic.Name}-de_1.log log files for the data entry window. See Editing the logging.xml file for Debugging for more information.
  2. Use the same session ID to locate the data entry logs. When the user opens a Data Entry window, RDC assigns a unique ID to the window. In addition, RDC creates a log entry against the user's HTTP session ID. You can locate all data entry logs relevant to the user for the data entry session using the HTTP session ID and the Window context ID. The following example highlights these IDs in bold:

    [9e46412a075dc5104ec7e9a06b704bbfb121525115d20e641d6835974ac786e8] Window context Id for this CRF: 4750992751934458

Data Capture API (DCAPI) Logs

Every data entry session is supported by a data capture engine running on the middle tier for that session. This engine consists of the following parts:

  • A Java layer
  • A process (olsadcapiservice.exe)
  • A DLL (olsadcapi.dll) loaded by the process

Each part generates a log file when logging is enabled.

DCAPI log files contain internal technical messages that may be meaningful to Oracle support and development only.

The name of these log files use the following format:

  • Java layer: DcapiJava_user-name_date-time.dbg
  • Process layer: DcapiExec_user-name_date-time.dbg
  • DLL layer: DcapiHtml_user-name_date-time.dbg

    where:

    user-name is the user's login ID.

    date-time is the date and time of the event. For example, 2009Aug15134550236.

Location of DCAPI Log Files

The DCAPI log files are located as defined in the application_path\log defined in the rdcConfig.properties file.

Note:

If a path is not specified for application_path, the default location used is OPA_HOME\log, for example C:/opapps54/log.

Log Level for DCAPI Log Files

There are no log levels associated with DCAPI logs.

Enabling DCAPI Logging

DCAPI logging is automatically enabled whenever you enable logging for data entry. To enable logging for data entry, add the &setUpDone=Y&debug=ALL parameters to the URL that starts the RDC application.

Locating DCAPI Log Entries

The way to link DCAPI logs to your data entry session is by noting the user name and the approximate time when the data entry session started and then locating the corresponding log files.

Data Capture API (DCAPI) Framework Logs

You can enable RDC to generate DCAPI framework logs that capture logs from the common code that creates, manages, and closes DCAPI instances. The DCAPI generates two log files for each instance running WebLogic Admin Server. These log files help when troubleshooting issues with launching data entry sessions.

To enable DCAPI framework logging:

  1. Login to admin server console for OPADomain and locate olsardc. See Locating the olsardc.ear File for details.
  2. Open olsardc.ear using any utility to unzip. See Manually Extracting and Repacking the olsardc.ear File for details.
  3. Navigate to the following path: OPA_HOME\rdc\olsardc.ear\RdcSurroundAdfWebUIWebApp.war\WEB-INF
  4. Locate and open dcapi.properties with a text editor.
  5. Find the following parameter and set the value to 1:

    frameworklog=1

  6. Find the following parameter:

    frameworkloglocation=

    Specify the location for the DCAPI framework log files. For example, if you want the DCAPI to save the framework log files in the RDC log folder, set the parameter as follows:

    frameworkloglocation=drive:\\RDC_HOME\\log

    Note:

    You must specify the double forward slash throughout the directory path. Otherwise, the Java APIs read the single slash as an escape character.
  7. Save your changes.
  8. Re-deploy olsardc. See Redeploying RDC with Customizations for details.
  9. Restart the OpaServer. See Restarting the OPA Server for details.

Once you log in to RDC and open a CRF, the DCAPI generates the framework log files and continuously adds logs to the files. The names for the framework log files use the following format:

  • OHSA_DCAPI_Framework_Java_n.log
  • OHSA_DCAPI_Framework_Native_n.log

    where n is the JVM instance number. (If a single JVM is running the OC4J instance, then n is 1.)

Enabling a SQL Trace for Searches

To enable a SQL trace for searches (queries) executed during a user session, add the &sqlTrace=true parameter to the URL that starts the RDC application.

For example:

https://server.domain/rdcadfsrnd/faces/Login?setUpDone=Y&sqlTrace=true

Note:

If you need a SQL trace for the Data Entry window, you must enable the trace at the user level by a login trigger. Contact Oracle Support for instructions and assistance with this type of trace.

The trace file is generated on the database server.

  1. Log in to the database server.
  2. Connect to SQL*Plus as system:
    sqlplus system
  3. Execute the below query to locate the trace file:
    select value from v$diag_info where name='Diag Trace';

Error when a Failure Occurs during Data Entry

When an error occurs while working in the Data Entry window, RDC displays an error message in the following format:

Error message example

Table 15-1 describes the types of errors that can occur and the corresponding error_text that displays with the message.

Table 15-1 Errors and the Text Added to the Message

Type of Error Text Added to the Message

Network drop, error from the browser, or error from the Application Server

XMLHttp error code error_number, (additional_error_text)

Note that under most circumstances, RDC handles a momentary network drop, and displays a different message that presents a Retry option to the user. However, in some cases, a network drop results in the Data Entry window shutting down.

Error in the data entry code

Log code error_number, internal error.

Error in the DCAPI

Log code error_number, data capture error.

Locating Log Files for a Fatal Failure during Data Entry

In the case of a fatal failure, RDC displays the error message and log code information. See Figure 15-1.

Figure 15-1 Fatal Error Dialog Box with Log Code information

Fatal Error Dialog Box

When the error occurs, the RDC user should record the log code number and the error text, and then report the information to you. For example:

Log code 9522631529, data capture error.

You can use the log code to search the log file and get more details on the error. Two important notes:

  • The exact code can be in any one of the log files in the OpaServer1 log location folder.
  • The particular log file that contains the log code may be deleted if you do not read the log within a reasonable time after the failure because the log size limits can force the logger to delete log files and create new files to accommodate new logs.

Note:

In case of critical errors or failures in the Data Entry window, RDC automatically generates a log entry even if you did not enable logging from the URL. RDC users should always record the log code when the error occurs. Subsequently, you can use the log code to reference additional information about the error.

Dump File for a Data Entry Fatal Failure Error

A fatal failure in a data entry session always generates a dump file on the middle tier that contains information relevant to the failure. This information will help Oracle support and developers troubleshoot issues.

For more information, see:

Location of the Dump File

The name of the dump file uses the following format:

logcode.dump

where logcode is the log code that appears in the Data Entry window in case of a fatal failure.

RDC creates this file on the middle tier in the application_path\log directory defined in the rdcConfig.properties file.

Enabling Dump File Creation

RDC always creates dump files in the case of a fatal failure in data entry, with or without logging enabled. However, it is helpful to Oracle support if you generate and gather more information by enabling logging for data entry.

For critical errors, Oracle suggests that you set the data entry log level to FINEST, and then reproduce the failure to generate the maximum amount of log information.

Choosing Data Entry Log Level

You can set the level of detail for the Data Entry logs with the value of the parameter level, found in the dataentrylogger.properties file. Any of the following is valid:

  • FINE
  • FINER
  • FINEST
  • WARNING
  • SEVERE

To modify the value, perform the following steps:

  1. Login to admin server console for OPADomain and locate olsardc. See Locating the olsardc.ear File for details.
  2. Open olsardc.ear using any utility to unzip. See Manually Extracting and Repacking the olsardc.ear File for details.
  3. Navigate to the following path: OPA_HOME\rdc\olsardc.ear\RdcSurroundAdfWebUIWebApp.war\WEB-INF\
  4. Open the dataentrylogger.properties file with a text editor, find the parameter level and set the value to FINEST:
    level=FINEST
  5. Save your changes.
  6. Re-deploy RDC. See Deleting the Existing Deployment for details.
  7. Restart the opaserver. See Redeploying RDC with Customizations for details.

Reading a Dump File

When a fatal failure occurs in a data entry session, the RDC user should note the log code and report it to you. You can use the log code to locate the dump file in the application_path\log directory.

The dump files has several key sections to help with troubleshooting.

As shown in Example 15-1, the first long alphanumeric string in the first section provides the following important identifiers:

  • The HTTP session ID for the user
  • The user name and database
  • The Window Context session ID for the Data Entry window where the failure happened
  • The time stamp for the DCAPI log

You use the user's session ID, the user name, the database, and the window session ID to search the ${weblogic.Name}-de_1.log (as configured in logging.xml) for all relevant entries. You use the time stamp to locate the DCAPI log files. See Data Capture API (DCAPI) Logs for more information.

The next section of the log file lists the actual exception stack.

#---------------------------------------------------------------
Exception Details:Error in DCAPI Module.
oracle.pharma.rdc.de.exception.FailedOperationException: Error in DCAPI Module.
       at
oracle.pharma.rdc.de.exception.FailedOperationException.<init>
(FailedOperationException.java:75)
       at
oracle.pharma.rdc.de.service.dcs.DciFormData.doFieldUpdate(DciFormData.java:6274)
jvmid=1

Example 15-1 Important Identifiers in the Dump File

#Starting dump of context parameters for failureId: 9522631529
#---------------------------------------------------------------
refids=0a957842231c103dc782a58e44a49c2089684b16a007,
<user>@<database>,28905006072188144,2009Jul15161040954