23 Overview of Oracle Fusion Applications Incidents and Log Files

This section provides background information about Oracle Fusion Applications incidents, log files, log file entries, and the QuickTrace (in-memory logging) feature.

The following topics are discussed:

23.1 Overview of Oracle Fusion Applications Incidents, Logging, and QuickTrace

Incidents, log files, and QuickTrace can all help in the administration of Oracle Fusion Applications. If the Oracle Fusion Applications environment includes Oracle Enterprise Manager Cloud Control (Cloud Control), then it is also possible to use Support Workbench, which would help investigate, report, and resolve problems.

  • Incidents are collections of information about error conditions. Some incidents are created and gather information automatically when problems occur. For example, the information associated with an automatically created incident may include detailed operational information collected by the QuickTrace (in-memory logging) feature for Oracle Fusion Applications. For problems that do not automatically create incidents, administrators or help desk personnel can manually create incidents and manually gather and add related system information.

    Preparing to process incidents is a key part of normal operations. It is strongly recommended to follow Information Technology Infrastructure Library (ITIL) best practices by establishing a help desk or service desk within your organization to support Oracle Fusion Applications, and have the help desk personnel use incidents to track the troubleshooting and resolution of all problems.

  • Log files contain information about both normal and problematic events. Log files can help administrators to monitor normal operations and to diagnose and address some problems themselves. For example, log messages that state that a service cannot be reached might indicate a hardware failure. If there is a more complex issue, then Oracle Support personnel may use log files to trace the execution code paths of relevant requests, as part of diagnosing the problem. Log files are particularly helpful if your Oracle implementation contains custom code that needs debugging, especially when using a debugger is not feasible, such as on a production system.

  • The QuickTrace (in-memory logging) feature continuously records a specified level of log detail in an area of memory. The memory is recycled on an ongoing basis, with the oldest information being deleted or overwritten first. Because QuickTrace writes to memory instead of to a log file, it can gather operational information continuously without significantly affecting system performance. The information that QuickTrace stores in memory is written to disk only when an incident occurs or when an administrator manually dumps the contents of a QuickTrace buffer.

In Cloud Control, Support Workbench helps to investigate, report, and resolve problems (critical errors). Use Support Workbench to perform the following kinds of operations:

  • View summary information about recent problems and incidents

  • View detailed diagnostic data that was gathered automatically

  • Manually trigger additional dumps of diagnostic data

  • Connect to the Oracle Fusion Applications Diagnostic Dashboard application (Diagnostic Dashboard), which provides additional diagnostic tests that can be run. For information about using Diagnostic Dashboard, see Prepare to Troubleshoot Using Incidents, Logs, QuickTrace, and Diagnostic Tests

  • Create or update service requests with Oracle Support, including uploading diagnostic data to Oracle

For information about using Support Workbench to administer Oracle Fusion Applications targets, specifically, see the Prepare to Troubleshoot Using Incidents, Logs, QuickTrace, and Diagnostic Tests section. For general information about using Support Workbench, see topic Support Workbench Page in the Cloud Control online help.

23.2 Oracle Fusion Applications Incidents

Incidents are collections of information about error conditions. Some incidents are created and gather information automatically when problems occur. When troubleshooting any problem that does not create its own incident, create an incident manually and use it to organize troubleshooting the information gathered.

It is recommended to use the Incident Manager feature in Oracle Enterprise Manager Cloud Control to view and work with incidents.

23.2.1 Incident Settings to Leave As-Is

By default, incident creation functionality for Oracle Fusion Applications is enabled, and it should ordinarily remain enabled. However, if Oracle Support indicates to disable incident creation, use the AFLOG_INCIDENT_ENABLED profile option to do so. To set the value of this profile option, use the Manage Administrator Profile Values task in the Setup and Maintenance work area. For more information about this setting, see Table 23-1.

Incident creation functionality is also enabled by default for the Oracle Fusion Middleware Diagnostic framework. In addition, various Oracle Fusion Middleware profile options govern the details of how incidents are collected and stored. In general, troubleshooting will not require you to change these settings. For more information, see the Configuring the Diagnostic Framework section in the Oracle Fusion Middleware Administrator's Guide.

23.2.2 Incident File Locations

It is generally recommended to view and work with incident information using Support Workbench. If there is a need to locate incident information directly on an individual server, use the following information:

  • For Oracle Fusion Applications, Oracle Fusion Middleware, and Oracle Database, incidents are stored in the incident subdirectories of the Automatic Diagnostic Repository (ADR) home directories. However, the location of the appropriate ADR home directory for a given incident depends on the environment from which the incident was created. In all cases, incidents are stored separately from log files.

    Paths to directories that contain incident information begin with the path to the ADR base directory, where domain is the full path to an Oracle Fusion Applications domain, including the name of the physical Oracle WebLogic Server domain:

    (UNIX) domain/servers/managed_server_name/adr
    

    The ADR base directory path is followed by the path to one of several possible incident directories.

  • For an incident that involves Oracle Fusion Middleware code, the incident information is stored under the following location, where, domain_name is the name of the Oracle Fusion Applications domain, and server_name is the name of the server where the incident occurred:

    (UNIX) ADR_base_directory/diag/ofm/domain_name/server_name/incident
    
  • For an incident that involves Java code or a SOA composite in an Oracle Fusion application, the incident information is stored under the following location, where application_name is the name of the Oracle Fusion application that was executing when the incident occurred:

    (UNIX) ADR_base_directory/diag/ofm/fusionapps/application_name/incident
    
  • For an incident that involves PL/SQL code in an Oracle Fusion application, the incident information is stored under the following location:

    (UNIX) ADR_base_directory/diag/ofm/db_server_name/database_instance/incident
    
  • For an incident that involves Oracle Database code, the incident information is stored under the following location:

    (UNIX) ADR_base_directory/diag/rdbms/db_server_name/database_instance/incident
    
  • For an incident that involves C code in an Oracle Fusion application, the incident information is stored on the Java application server that runs C batch jobs using Oracle Enterprise Scheduler. On that server, the incidents are stored under the following location, where ess_hosted_app_name is the name of the Oracle Fusion application that starts batch jobs:

    (UNIX) ADR_base_directory/diag/ofm/fusionapps/ess_hosted_app_name/incident
    

    The exact name of the application that starts batch jobs depends upon which product family is in use. Typical values include FinancialsEssApp, HcmEssApp, CrmEssApp, ProjectFinancialsEssApp, ProcurementEssApp, and ScmEssApp. It is possible to determine the correct ess_hosted_app_name name for your Oracle Fusion application by using Fusion Applications Control for the application. In the navigation pane, if the folder that is labeled with the product family name is expanded, and then the Fusion Applications folder is expanded, the ess_hosted_app_name is the name under Fusion Applications that contains EssApp.

23.2.3 Default System Settings for Incident Creation

The default profile option configuration settings for incident creation profile options are shown in Table 23-1:

Table 23-1 Profile Options for Oracle Fusion Applications Incidents

Profile Option Name (and Display Names) Environment Description Possible Values or Example Applicable Profile Hierarchy Levels Default Value

AFLOG_ INCIDENT_ ENABLED

(Incident Enabled)

Java, PL/SQL, C, and SOA

Enables or disables incident creation for Oracle Fusion Applications. (This profile option does not affect Oracle Fusion Middleware incident creation functionality.)

A value of Y allows incident creation at runtime. A value of N prevents incident creation.

This profile option is available for SITE but is not available for USER.

AFLOG_INCIDENT_ENABLED is a new profile that was introduced in Oracle Fusion Applications to support application incident creation.

Y, N

Site

Y

AFLOG_ PLSQL_FLOOD_ CONTROL_ ENABLED

(FND: Incident Flood Control Enabled)

PL/SQL

Determines whether to restrict the collection of diagnostics if multiple PL/SQL incidents occur within a set time period for the same problem. Specify Y to restrict diagnostic collection and N to leave it unrestricted.

Y, N

Site

Y

AFLOG_ PLSQL_FLOOD_ CONTROL_INC_ COUNT

(FND: Total number of incidents for problem key)

PL/SQL

When AFLOG_PLSQL_FLOOD_ CONTROL_ENABLED is set to Y, the value of this setting determines the number of PL/SQL incidents with the same problem key for which diagnostics are collected during a set time period. If the number of incidents with the same problem key exceeds the value of this setting during the time period specified by AFLOG_PLSQL_FLOOD_CONTROL_ INC_TIMEPERIOD, an incident is created, but no diagnostics are captured.

Positive integers

Site

5

AFLOG_ PLSQL_FLOOD_ CONTROL_INC_ TIMEPERIOD

(FND: Flood control time period)

PL/SQL

When AFLOG_PLSQL_FLOOD_ CONTROL_ENABLED is set to Y, the value of this setting specifies the time period in minutes during which diagnostics are not collected if the number of PL/SQL incidents that occur for the same problem exceeds the value of AFLOG_PLSQL_FLOOD_ CONTROL_INC_COUNT.

Positive integers

Site

60

AFLOG_ PLSQL_MAX_ TOTAL_INC_ SIZE

(FND: Total size of incident files)

PL/SQL

Sets the amount of disk space in megabytes that is allocated for PL/SQL incident data storage. When incidents use more than this amount of disk space, the oldest incident that is no longer needed is automatically purged.

Whether an older incident is still needed is determined by checking the incident's status in the Automatic Diagnostic Repository (ADR). If the status of the incident is 3, or KEEP, or tracking, then that incident is not purged.

If the allocated disk space is full and if all stored incidents are still needed, a new, empty incident directory called inc_incident_ID_number is created, and log file messages may refer to that location, but diagnostic log excerpts are not saved to that incident directory.

Positive integers

Site

500 (MB)

23.2.4 When Changes to Incident Configuration Settings Take Effect

Changes to incident profile options ordinarily take effect as follows:

  • User sessions: Changes to site-level incident profile options take effect for any user session that is started after the setting has been changed. Changes to site-level log file profile options do not affect any user sessions that are already in progress when the change is made.

  • PL/SQL and C processes such as scheduled jobs: Changes to site-level incident profile options take effect for any C or PL/SQL processes that are started after the setting has been changed. Incident profile option changes do not affect C or PL/SQL processes that are already running.

23.2.5 Recover from Incidents Generated During SOA Operations

In some cases in which an Oracle Fusion Applications incident is generated during an operation that involves a SOA composite, the application code may let manually recover the operation and resume processing at the point where the incident occurred.

To determine whether it is possible to recover or resume processing of an interrupted SOA composite operation, perform the following steps:

  1. Log on to the server where the incident was logged as a user that has the Oracle Fusion Middleware role of Administrator.

  2. Navigate to the directory where the information about the incident is stored.

    For information about typical locations for incidents, see the Incident File Locations section.

  3. Inspect the readme.txt file in the incident directory and make a note of the composite_instance_id and composite_name values.

    For example, the readme.txt file might include the following lines:

    composite_instance_id: 10009
    composite_name: FinApInvTransactionsInvoiceApprovalComposite
    
  4. In the navigation pane of Fusion Applications Control, expand the hierarchical tree as needed to locate and select the SOA composite that was mentioned in the readme.txt file for the incident.

    For example, expand Farm_soa_domain_new, then SOA, then expandsoa_infra (soa_server1), then default, and finally select FinApInvTransactionsInvoiceApprovalComposite.

  5. If it is not already selected, then click the Dashboard tab.

  6. In the Recent Instances table in the content pane, click the Instance ID value that matches the composite_instance_id value that was saw in the log.

    The Flow Trace page appears.

  7. If it has not been done yet, then use the information on the Flow Trace page to determine how to correct the problem that generated the incident, then repeat steps as needed to return to the Flow Trace page.

    For more information about troubleshooting SOA operations, see Troubleshoot Oracle SOA Suite.

  8. Inspect the Recovery column of the Faults table for a row that contains a Recoverable link.

    • If the Recovery column contains a Recoverable link, then it may be possible to resume processing of the SOA operation at the point where it previously failed. Click Recoverable to display more details about the recoverable instance and continue to Step 9.

    • If the Recovery column does not contain a Recoverable link, then the SOA operation is not recoverable. Do not proceed with these instructions. Instead, have an appropriate Oracle Fusion Applications user restart the sequence of operations that led to the incident, beginning as close to the point of failure as is practical.

  9. In the list of faults for the instance in question, select the row that contains the word Recoverable in the Recovery column, and then click Recover in the page area below the list.

  10. In the Confirmation dialog, click Yes.

    If the recovery process succeeds, the following message is displayed:

    Action completed successfully.
    

    Click OK to dismiss this message, which marks the completion of the recovery task.

    If the recovery process does not succeed, the list of faults with the word Recoverable in the Recovery column remains visible. This indicates that addressing the underlying cause of the original problem was not successful. Double-check your fix for the problem or try another approach. When the problem has been addressed successfully, return to the Flow Trace page and repeat Step 8 through Step 10.

23.3 Oracle Fusion Applications Log Files

Although critical business logic sections of Oracle Fusion applications may write more information to log files than less critical areas of the application code, the amount of information that Oracle Fusion applications log depends primarily on how the environment is configured. Oracle supplies default values for log settings, but different setting values can be specified if there is a need to adjust the amount of information to be logged. Most of Oracle Fusion Applications components use a standard set of log configuration settings.

Under certain specific conditions, Oracle Fusion Applications users can set their own profile option for logging levels, from the Troubleshooting Options dialog available in the Troubleshooting section of the Oracle Fusion Applications Settings and Actions menu. Setting a logging level for a particular user is useful if only that user has to gather more detailed log information while attempting to reproduce a problem. However, the Settings and Actions menu displays the Troubleshooting Options command only for Oracle Fusion Applications users who have a job role that is mapped to the "Supportability Level Management" duty role (FND_SUPPORTABILITY_LEVEL_MANAGEMENT_DUTY).

Out of the box, the following three seeded job roles inherit the "Supportability Level Management" duty role:
  • Business Flow Troubleshooting

  • Application Diagnostics Administrator

  • Application Administrator

Oracle Fusion Applications seed data includes a preconfigured job role, BUSINESS FLOW TROUBLESHOOTING, which maps to this duty role. Assign this job role to any Oracle Fusion Applications user who needs temporary access to the Troubleshooting Options dialog box, or define a similar job role when there is a need to give such a user access to the Troubleshooting Options dialog. Whichever way is chosen, it is possible to reuse the same job role for other users who subsequently need the same access.

For more information about making the Troubleshooting Options command and dialog available to selected Oracle Fusion Applications users, and about working with those users to gather troubleshooting data, see the Assist Users in Gathering Data Using Troubleshooting Options section.

The following types of settings affect how logging is done, including the effective logging level:

  • AFLOG_SettingName profile option values.

    Among AFLOG_SettingName profile options, the following options currently support the use of the PRODUCT level in Oracle Fusion applications that are coded in Java or SOA: AFLOG_ENABLED, AFLOG_LEVEL, AFLOG_MODULE, and FND_MESSAGE_MODE.

  • Oracle Diagnostics Logging Level: The log level for Oracle Fusion applications that are written in Java or SOA. The value for this setting is specified in each Managed Server's logging.xml file, in the oracle.apps.appslogger entry. Log levels for most entries are adjusted using the Managed Server's Log Configuration page in Fusion Middleware Control, rather than by directly editing the logging.xml file. However, the log level for the oracle.apps.appslogger entry should remain set to the default value of All unless Oracle Support gives specific instructions to change it.

    The logging framework for Oracle Fusion Applications is designed to work with the Log Level for the oracle.apps.appslogger logger set to the default value of All. If other values for this setting are used, the diagnostic framework may not appear to work correctly, because setting values other than All can interfere with normal logging operations.

23.3.1 Understand Oracle Fusion Applications Log Files and Log Messages

Log files can help in administering and supporting Oracle Fusion Applications over time. Oracle developers use mechanisms such as Application Programming Interface (API) calls in Oracle Fusion Applications code to record application operations in log files and to provide error messages as appropriate. It is important to be familiar with the following additional concepts that are related to log files:

  • Seed data: is information that Oracle provides to you in the form of database records. Error messages are included in seed data.

  • Profiles: are settings that can be selected to determine details of how the application operates. Oracle Fusion applications include profile options that affect how much information to log either for an entire site or for a specific user. Oracle Fusion applications that are written in Java also support some profile options that affect how much information to log for a specific product.

23.3.1.1 Standard Log File Administration Tasks and Tools

Under ordinary circumstances, the following administrative tasks are part of the necessary setup and maintenance of Oracle Fusion Applications log files:

  • Tuning system performance by adjusting configuration settings for logs

  • Reviewing log files for general monitoring of system health

  • Searching for specific information in log files

  • Managing available disk space for log files

If your Oracle Fusion Applications environment includes Cloud Control, then it may be convenient to use Cloud Control to monitor log files in multiple domains, simultaneously.

It is possible to use the Oracle Enterprise Manager Fusion Applications Control (Fusion Applications Control) user interface to complete all of the tasks listed in this section, but only for one WebLogic domain at a time. In particular, it is possible to use Fusion Applications Control to configure log profile option values for Oracle Fusion Applications, although it is also possible to configure profile options by using the Manage Administrator Profile Values screen in the Setup and Maintenance work area. Use either Cloud Control or Fusion Applications Control to view and search Oracle Fusion Applications log files.

Fusion Applications Control and Cloud Control are compliant with Information Technology Infrastructure Library (ITIL) best practices.

During troubleshooting activities, additional log administration tasks may include downloading log files from servers and packaging incidents for transmittal to Oracle Support. For more information about these activities and the tools for accomplishing them, see the Prepare to Troubleshoot Using Incidents, Logs, QuickTrace, and Diagnostic Tests section.

23.3.1.2 Log Files and Settings

Oracle provides settings that determine the amount of information that is gathered into the log files for your Oracle Fusion applications. To adjust how much information is gathered, either use the default setting values or change one or more values.
  • If your system is operating correctly, it may be needed to log entries only for particularly important kinds of events.
  • If your system experiences a problem, then temporarily increase the amount of information that is logged to get more detailed information while attempting to reproduce and resolve the problem.

Most Oracle Fusion applications write log output in Oracle Diagnostic Logging (ODL) format. For information about the attributes that appear in standard log files for Oracle Fusion Applications, see the Understanding ODL Messages and ODL Log Files section in the Administering Oracle Fusion Middleware.

23.3.1.3 Log Message Structure

A typical log message consists of the following three parts:

  • Attributes that are logged by the Oracle Fusion Middleware layer or the Oracle Database layer

  • Attributes that are logged by logging APIs for Oracle Fusion Applications, including AppsLogger

  • Message text

23.3.1.3.1 Log Message Attributes Supplied by the Oracle Fusion Middleware and Oracle Database Layers

The log message attributes logged by the Oracle Fusion Middleware layer or the Oracle Database layer may include the following:

  • Date/time: The date and time when the message was recorded in the log.

  • Component ID: The component or Oracle WebLogic Server (WebLogic Server) instance from which the message originated. For the Oracle Fusion Middleware layer, a typical value is the name of the Oracle WebLogic Server that was executing the Oracle Fusion application when the message was generated. For the database layer, a typical value is rdbms.

  • Message Type: Level: Shows the level being logged for the particular message

  • Message ID: A unique identifier for a seeded message, composed of the product code and a message number. A typical value for a message ID might be FND-12343.

  • Module ID: The system or application module that generated the message. This is usually the name of the logger object that generated the message. In some cases, the logger name may reflect the full Java class name of the application code module that was executing when the message was logged. In other cases, the logger object may generate messages for multiple Java classes.

  • Thread ID (TID): A unique identifier for the thread within the Java process where the message was generated.

  • Java EE application name: Name of a Java EE application that was executing when the message was logged.

  • User name: A unique identifier that the user enters when signing in to an Oracle Fusion application. This attribute is logged both by Oracle Fusion Middleware and by the logging APIs for Oracle Fusion Applications.

  • Selective trace ID (labeled ODL_TRACE_ID in the log file): An identifier for operations in the Oracle Fusion Middleware layer that match criteria an administrator supplied as part of a request to log additional information.

Selective trace operations do not affect the information that is logged from the Oracle Fusion Applications layer, but the Oracle Fusion Middleware log messages that selective tracing operations obtain are stored in the same log files as log messages from the Oracle Fusion Applications layer. Similarly, log messages from the Oracle Fusion Applications layer are listed with Oracle Fusion Middleware log messages in selective trace output if those log messages match the trace criteria that the administrator specified. For more information about selective tracing, see the Configuring and Using Selective Tracing section in the Administering Oracle Fusion Middleware.

23.3.1.3.2 Log Message Attributes Supplied by Logging APIs for Oracle Fusion Applications

The log message attributes logged by logging APIs for Oracle Fusion Applications include the following:

  • User Name: A unique identifier that the user enters when signing in to an Oracle Fusion application. This attribute is logged both by Oracle Fusion Middleware and by the logging APIs for Oracle Fusion Applications.

  • User GUID: A global unique identifier representing the user.

  • Role IDs: A list of IDs representing the job roles granted to the user.

  • Session ID: A unique identifier for the application user session.

  • Thread Name: A name that identifies the thread generating the log in Java Virtual Machine (JVM). Applies only to Oracle Fusion applications that are written in Java. Logging APIs for Oracle Fusion applications that are written in C and PL/SQL do not populate this attribute.

  • Apps Source: The portion of the Oracle Fusion Applications code that is executing when the message is logged.

  • Apps Auto Log: Indicates whether the message being logged was logged implicitly.

  • DB Connection URL: The URL connection string for the application database data source.

Depending on the value of the AFLOG_EXTENDED_ENABLED profile option, the following supplemental attributes may also be logged:

  • Message Cause: The reason that the message is being logged.

  • Admin Action: Recommended follow-up action for Oracle Fusion Applications administrators.

  • Admin Details: Additional information for administrators about the condition being logged.

  • User Action: Recommended follow-up action for Oracle Fusion Applications users.

  • User Details: Additional information for users about the condition being logged.

For more information about how the AFLOG_EXTENDED_ENABLED profile option affects the logging of these supplemental attributes, see the Default System Log Settings section.

23.3.1.3.3 Log Message Attributes Supplied by the Application Session

The log message attributes logged by the application session include the following:

  • Product Family: The name of the group of Java EE applications specific to Oracle Fusion Applications that contains the application that is executing when the message is logged.

  • Product: The name of the product that is executing when the message is logged.

23.3.1.3.4 Log Message Attributes Supplied by Oracle Enterprise Scheduler Job Requests

The following attributes appear in the log if the log entry is written from an Oracle Enterprise Scheduler job request:

  • Job Request ID: The identifier of the Oracle Enterprise Scheduler job request that is being executed when this message is logged.

  • Job Definition Name: The name of the Oracle Enterprise Scheduler job definition. A job definition is the smallest unit of work that is performed in the context of the client application.

  • Job Package Name: The package location of the Oracle Enterprise Scheduler job definition that is executing when this message is logged.

  • Job Definition Application: The application that owns the Oracle Enterprise Scheduler job.

23.3.1.3.5 Log Message Attributes Supplied by SOA

The following attributes appear in the log if the log entry is written from SOA:

  • SOA Composite Name: The name of the SOA Composite that is executing when the message is logged

  • SOA Component Name: The name of the SOA Component that is executing when the message is logged

  • SOA Composite Instance ID: The instance ID of the SOA Composite that is executing when the message is logged

  • SOA Component Instance ID: The instance ID of the SOA Component that is executing when the message is logged

  • Log Token Map: One or more primary key values for the logical entity that a BPEL process is handling when the message is logged. Oracle Support may require this information for troubleshooting purposes.

23.3.2 Typical Log File Locations

The following information is provided for reference purposes. For maximum clarity and convenience, it is recommended to use Fusion Applications Control to work with Oracle Fusion Applications log files, rather than working directly with the log files. Each Oracle Fusion application runs in one or more logical Managed Servers. Each Managed Server is dedicated to a single Oracle Fusion application. Different Managed Servers do not typically share log files with each other, even if they are running on the same physical server computer.

Most Oracle Fusion Applications code modules use standard logging code. On each Managed Server, all Java and SOA application code modules that use standard logging code write log entries to a single file. The location of this file is specified by a log_handler entry in a logging.xml file. The default location for the logging.xml file is as follows, where DOMAIN_HOME is the path to your Oracle WebLogic Server (WebLogic Server) domain, and WebLogic_Server_Name is the name of the WebLogic Server that uses the logging.xml file:

DOMAIN_HOME/config/fmwconfig/servers/WebLogic_Server_Name/logging.xml

The following example shows a typical log_handler entry in the logging.xml file, which includes the path and file name of the log file:

Example 23-1 Typical log_handler Entry Showing Log File Name and Location

<log_handlers>
  <log_handler name='apps-handler' class='oracle.core.ojdl.logging.ODLHandlerFactory'>
    <property name='path' value='${domain.home}/servers/${weblogic.Name}/logs/apps/
       ${weblogic.Name}-diagnostic.log'/>
    <property name='maxFileSize' value='10485760'/>
    <property name='maxLogSize' value='104857600'/>
    <property name='encoding' value='UTF-8'/>
    <property name='supplem8entalAttributes' value='APPS_USER_NAME, 
APPS_SESSION_ID, APPS_THREAD_NAME, APPS_SOURCE, APPS_USER_ID, APPS_AUTO_LOG, 
APPS_JOB_REQUEST_ID, APPS_JOB_DEFINITION_NAME, APPS_JOB_PACKAGE_NAME, 
APPS_JOB_DEFINITION_APP, APPS_COMPOSITE_NAME, APPS_COMPONENT_NAME, 
APPS_COMPOSITE_INSTANCE_ID, APPS_COMPONENT_INSTANCE_ID, APPS_PRODUCT_FAMILY, 
APPS_PRODUCT, APPS_INDUSTRY, APPS_TERRITORY, APPS_DB_CONNECTION_URL, 
APPS_MESSAGE_CAUSE, APPS_USER_ACTION, APPS_ADMIN_ACTION, APPS_USER_DETAILS, 
APPS_ADMIN_DETAILS, APPS_LOG_TOKEN_MAP'/>
  </log_handler>
</log_handlers>

The following example shows the default location for the standard log file is as follows, for Oracle Fusion application that are implemented in Java and SOA, where DOMAIN_HOME is the path to your Oracle WebLogic Server domain:

Example 23-2 Default Log File Location for Oracle Fusion Applications Implemented in Java and SOA

DOMAIN_HOME/servers/domain_name/logs/apps/server_name-diagnostic.log

For Oracle Fusion Applications code modules that are implemented in PL/SQL, the location of the standard log file is set by the AFLOG_PLSQL_FILENAME profile option. By default, the value of this profile option is APPLLOG_DIR/diagnostic.log ,where APPLLOG_DIR is a directory object that was defined as a custom variable with the Oracle Fusion Applications Repository Creation Utility during installation.

If there is not a record of the location of the APPLLOG_DIR directory, it is possible to connect to the database for Oracle Fusion Applications using a database client, and use the following SQL query to obtain the location:

select DIRECTORY_PATH from ALL_DIRECTORIES where DIRECTORY_NAME = 'APPLLOG_DIR';

For Oracle Fusion Applications code modules that are implemented in C, the location of the standard log file is set by the AFLOG_FILENAME profile option. By default, the value of this profile option is diagnostic.log, but it is recommended to set the value to directory_path/Cdiagnostic.log, where directory_path is a location that can be written to by all system users and by the Managed Server where Oracle Enterprise Scheduler is deployed for your Oracle Fusion applications. For example, the value of directory_path might be set to /tmp, or to an explicitly specified directory path that corresponds to the value of the APPLCP_DIR custom variable that was defined with the Oracle Fusion Applications Repository Creation Utility during installation.

By default, the following Oracle Fusion Applications code modules do not write log entries. If these modules are configured to write log entries, then the entries for those modules are written to nonstandard log file locations. These modules do not specify any configuration settings using the standard logging.xml file:

  • Oracle Fusion Global Payroll

    For optimum performance, it is recommended to use the logging functionality that is available in the Oracle Fusion Global Payroll application only when troubleshooting an existing problem. For more information about using this feature and viewing the results, see the Overview of Non-Standard Log Levels for Oracle Fusion Global Payroll section.

  • The following kinds of batch jobs for Oracle Fusion Incentive Compensation:

    • Calculation

    • Classification

    • Collection

    • Crediting

    • Rollup

    For optimum performance, it is recommended to use the logging functionality that is available for these kinds of Oracle Fusion Incentive Compensation batch jobs only when troubleshooting an existing problem. For more information about using this feature and viewing the results, see the Configure Non-Standard Log Levels for Oracle Fusion Incentive Compensation and the View Special Log Output for Oracle Fusion Incentive Compensation sections.

  • The following kinds of batch jobs for Oracle Fusion General Ledger:

    • OpenPeriod

    • Posting

    • Translation

    • Close Process - Create Income Statement Closing Journals

    • Close Process - Create Balance Sheet Closing Journals

    For optimum performance and log file sizes, it is recommended to use the logging functionality for these kinds of Oracle Fusion General Ledger batch jobs only when troubleshooting an existing problem. For more information about using this feature and viewing the results, see the Configure Non-Standard Log Levels for Oracle Fusion General Ledger section.

  • The AutoInvoice portion of the Oracle Fusion Receivables application

    The amount of information that is logged for AutoInvoice depends on the value of the Log File Message Level system option setting for each business unit. Any AutoInvoice log messages that meet the level requirements are written to the standard log file for Oracle Enterprise Scheduler. For more information about adjusting this setting for troubleshooting and viewing the results, see the Overview of Non-Standard Log Levels for Oracle Fusion Receivables AutoInvoice section.

23.3.3 Location of Logged Information When Using Multiple Managed Servers

The following information is provided for reference purposes. For maximum clarity and convenience, it is recommended to use Fusion Applications Control to work with Oracle Fusion Applications log files, rather than working directly with the log files. If an Oracle Fusion application is deployed to multiple Managed Servers in a cluster domain, each Managed Server records log entries in its own log file, for the transactions or other operations handled by that server.

For your convenience in monitoring Oracle Fusion applications that run on multiple Managed Servers, Fusion Applications Control allows viewing either individual standard log files for individual Managed Servers or the aggregated contents of the standard log files of all of the servers in the cluster domain. The aggregated log is especially useful if there is a need to find a particular log entry but do not know which Managed Server recorded it. For more information about viewing log files, see the View Logs and the View Logs from Fusion Applications Control sections.

Fusion Applications Control does not currently support viewing the contents of any nonstandard log files generated by Oracle Fusion Incentive Compensation, Oracle Fusion General Ledger, or the AutoInvoice portion of the Oracle Fusion Receivables application.

Log entries for the AutoInvoice portion of Oracle Fusion Receivables are placed in the standard log file for Oracle Enterprise Scheduler. For information about viewing Oracle Fusion Middleware log files, including log files for Oracle Enterprise Scheduler, see the Viewing and Searching Log Files section in the Administering Oracle Fusion Middleware.

When an Oracle Fusion application is deployed to multiple Managed Servers in a cluster domain, it is recommended to set the log level to the same value for all of the Managed Servers, so that all of the servers will log comparable amounts and kinds of information. However, it is possible to configure each Managed Server's log level independently, if there is a reason to do so.

23.3.4 Default System Log Settings

The seed data for Oracle Fusion Applications contains default values for many profile option settings. Normal operation settings for log files are described in the following table. For information about default system settings for incidents and QuickTrace, see the Default System Settings for Incident Creation and the Adjust QuickTrace Detail Levels sections.

Table 23-2 Profile Options for Oracle Fusion Applications Logging

Profile Option Name (and Display Name) Environment Description Possible Values or Example Applicable Profile Hierarchy Levels Default Value for Site Level

AFLOG_BUFFER_MODE

(FND: Buffer Mode for PL/SQL)

PL/SQL only

Asynchronous buffer mode for PL/SQL logging. A value of 0 disables buffering; a value greater than 0 enables buffering for messages that have levels lower than WARNING. PL/SQL log messages that have SEVERE level or WARNING level are not buffered.

You may want to use asynchronous buffering if you have set your log levels to collect detailed information and find that your system is running slowly. When asynchronous buffering is enabled, log messages from PL/SQL code that are at the INFO log level or below are written to a buffer rather than being immediately written to a log file. This reduces disk I/O activity. The buffer is written to the log file only when it contains the number of records specified in the AFLOG_BUFFER_SIZE setting.

0, 1

Site, User

0

AFLOG_BUFFER_SIZE

(FND: Buffer Size for PL/SQL)

PL/SQL only

Number of PL/SQL log records that are buffered in memory before they are written to the log file, when AFLOG_BUFFER_MODE is set to enable asynchronous buffering. Increasing the number of records to be buffered may improve performance by reducing disk I/O activity.

1024

Site, User

1000

AFLOG_ENABLED

(FND: Log Enabled)

Java, PL/SQL, C, and SOA

Enables or disables logging, but can be overridden by the AFLOG_ENABLED environment variable (for C code) or the corresponding Java system property.

Enables or disables standard logging functionality for Oracle Fusion Applications. If the value of this profile option is N, and if the profile option sets the effective logging level, then standard Oracle Fusion Applications logging does not occur at runtime for application modules written in Java, PL/SQL, SOA, or C. This profile option does not affect the configuration for Oracle Fusion Middleware.

Y, N

Site, User

Product level is supported for Oracle Fusion applications that are coded in Java or SOA.

Y

AFLOG_EXTENDED_ENABLED

(FND: Log Extension Enabled)

Java, PL/SQL, C, and SOA

Determines whether to log the following extended attributes:

  • Message cause (APPS_MESSAGE_CAUSE)

  • User action (APPS_USER_ACTION)

  • User details (APPS_USER_DETAILS)

  • Admin action (APPS_ADMIN_ACTION)

  • Admin details (APPS_ADMIN_DETAILS)

When the value of this profile option is Y, all of these extended attributes are logged. When the value of this profile option is N, none of these extended attributes are logged.

Y, N

Site

Y

AFLOG_FILENAME

(FND: Log File for C)

C only

Full path and file name of the log file for all of the Oracle Fusion applications that are written in C and that use standard logging functionality.

It is recommended that you set the value of this profile option to directory_path/ Cdiagnostic.log, where directory_path is a location that can be written to by all system users and by the Managed Server where Oracle Enterprise Scheduler is deployed for your Oracle Fusion applications. For example, you might set the value of directory_path to /tmp, or to an explicitly specified directory path that corresponds to the value of the APPLCP_DIR custom variable that was defined through use of the Oracle Fusion Applications Repository Creation Utility during installation.

If you do not set a directory path for this log file, the file is written to the default location specified by Oracle Enterprise Scheduler.

/temp/ Cdiagnostic.log

Site, User

diagnostic.log

AFLOG_LEVEL

(FND: Log Level)

Java, PL/SQL, C, and SOA

Minimum level of information detail to be logged for Oracle Fusion applications that use standard logging functionality. If no value is set for this profile option, the default value is 1000 (SEVERE).

For more information about log levels, see Standard Logging Levels.

1000, 900, 800, 700, 500, 400, 300

Site, User

Product level is supported for Oracle Fusion applications that are coded in Java or SOA.

1000

AFLOG_MAX_FILE_SIZE

(FND: Maximum size for log file in MB.)

PL/SQL

Specifies the size in megabytes beyond which the current standard log file for Oracle Fusion applications that are written in PL/SQL is automatically renamed and a new log file is started.

10

Site

10

AFLOG_MODULE

(FND: Log Module Filter)

Java, PL/SQL, C, and SOA

Specifies the Oracle Fusion applications for which logging takes place. Use a comma-separated list of modules for the value of this setting, and use % as a wildcard. If no value is specified, all modules are logged.

%, %financial%

Site, User

Product level is supported for Oracle Fusion applications that are coded in Java or SOA.

%

AFLOG_NUMBER_OF_LOG_FILES

(FND: Number of old log files)

PL/SQL

The maximum number of PL/SQL log files the system keeps at any one time.

Any integer greater than 0.

Site

10

AFLOG_PLSQL_FILENAME

(FND: Log File for PL/SQL)

PL/SQL only

The location and name of the log file for standard Oracle Fusion Applications log messages that are generated from PL/SQL. The location must be expressed as a directory object.

By default, the SITE level value for this profile option is set to APPLLOG_DIR/ diagnostic.log, where APPLLOG_DIR is a directory object that was defined using the Oracle Fusion Applications Repository Creation Utility during installation.

If you want the log file name to indicate that the log messages are generated from PL/SQL, then you can change the AFLOG_PLSQL_FILENAME profile option value to a value such as APPLLOG_DIR/ plsqldiagnostic.log.

For more information about the location of APPLLOG_DIR, see Typical Log File Locations.

APPLLOG_DIR/ mylog.log

Site, User

APPLLOG_DIR/ diagnostic.log

FND_MESSAGE_MODE

(Message Mode)

Java, PL/SQL, C, and SOA

For error conditions that use messages from the message dictionary, this setting determines whether administrator-level or user-level message details and suggested actions are displayed and logged.

ADMIN, USER

Site, Product, User

Product level is supported for Oracle Fusion applications that are coded in Java or SOA.

User

23.3.5 Standard Logging Levels

Seven severity levels are used for log messages in Oracle Fusion Applications, and each level is associated with a number. In circumstances where the effective logging level depends on the AFLOG_LEVEL logging profile option (rather than a lower odlLevel setting value), then, after the profile option level is set, only application messages that have a predefined severity level greater than or equal to the value of the AFLOG_LEVEL profile option are logged.

Set the value of the AFLOG_LEVEL profile option to one value for the site as a whole and to another value for any user whose operations that need to be logged at a different level of detail. For Oracle Fusion applications that are written in Java or SOA, it is also possible to set a separate value for the AFLOG_LEVEL profile option for a specific product.

For example, setting the level to the lowest severity, 300 (FINEST), for a particular user means that messages of all seven severities are logged for that user's operations. Similarly, setting the level to the lowest severity, 300 (FINEST), for a particular product means that messages of all seven severities are logged for that product's operations. Setting the level to 900 (WARNING) for the site means that logging occurs for 900 (WARNING) and 1000 (SEVERE) messages for all site operations except for operations of users or products that have different values for the AFLOG_LEVEL profile option.

The default severity level for the site level of Oracle Fusion Applications is 1000 (SEVERE). For optimum performance, it is recommended that you use this logging level for your sites unless you need to investigate a problem that specifically requires a change to a site's severity level. Gathering detailed log information for an entire site (rather than a single user) can decrease system performance and make it difficult to find relevant information in a log file.

The following table describes the three severity levels that are used for logging failures and normal events in Oracle Fusion Applications. The messages in the log file identify the severity of errors using the ODL Message Type/Level value.

Oracle Fusion applications that are written in PL/SQL have logging level names that start with LEVEL_. Oracle Fusion applications that are written in Java, SOA, and C do not use this LEVEL_ prefix for level names. For example, the log level that is called LEVEL_SEVERE in PL/SQL application code is comparable to the log level that is called SEVERE in Java, SOA, or C code.

Table 23-3 Severity Levels for Logging Failures and Normal Events

ODL Message Type/Level (in Log Files) Log Level Name (in Oracle Enterprise Manager Fusion Applications Control and Settings and Actions > Troubleshooting Options)(Java or C Log Level Name) AFLOG_LEVEL Profile Option Value (internal values stored in database tables) Usage and Examples

ERROR:1

SEVERE

(LEVEL_SEVERE for PL/SQL Log Level Name)

1000

Highest severity level. Unexpected errors that occur during normal execution. Irrecoverable exceptions or any other serious problems that require immediate attention from the System Administrator. An error at this level may also create an incident. For example, the following error messages might be associated with this log level:

The process cannot be started now because another process is using the data.

The participant's rate could not be found. Contact your benefits administrator to validate the standard rate for this compensation object.

WARNING:1

WARNING

(LEVEL_WARNING for PL/SQL Log Level Name)

900

Internal software failures. Exceptions or errors that allow processing to continue without requiring immediate attention from an administrator. Any potential problem that should be reviewed by the System Administrator.

For example, the following error message might be associated with this log level:

You must change your password before date.

NOTIFICATION:1

INFO

(LEVEL_INFO for PL/SQL Log Level Name)

800

Errors, warnings, and other kinds of information that allow processing to continue. May include key flow steps, high-level functional progress messages, and major life cycle events such as the activation or deactivation of a primary subcomponent or feature.

Table 23-4 describes the four severity levels that are used for tracing and reporting progress in Oracle Fusion Applications. The messages in the log file identify the severity of errors using the ODL Message Type/Level value.

Oracle Fusion applications that are written in PL/SQL have logging level names that start with LEVEL_. Oracle Fusion applications that are written in Java, SOA, and C do not use this LEVEL_ prefix for level names. For example, the log level that is called LEVEL_CONFIG in PL/SQL application code is comparable to the log level that is called CONFIG in Java, SOA, or C code.

Most log levels provide information that is useful to Oracle Fusion Applications administrators. However, the information that is logged at the FINER and FINEST log levels is primarily intended for use by Oracle.

Table 23-4 Severity Levels for Tracing and Reporting Progress in Logs

ODL Message Type/Level (in Log Files) Log Level Name (in Oracle Enterprise Manager Fusion Applications Control and Settings and Actions > Troubleshooting Options)(Java or C Log Level Name) AFLOG_LEVEL Profile Option Value (internal values stored in database tables) Usage and Examples

NOTIFICATION:16

CONFIG

(LEVEL_CONFIG for PL/SQL Log Level Name)

700

Configuration properties and environment settings. This is a finer level of granularity for reporting normal events.

TRACE:1

FINE

(LEVEL_FINE for PL/SQL Log Level Name)

500

High-level technical progress messages; more detailed than INFO level. Trace or debugging information for events that are meaningful to users of the product, such as public application programming interface (API) entry or exit points.

For example, the following error message might be associated with this log level:

User has chosen to cancel the Purge operation.

TRACE:16

FINER

(LEVEL_FINER for PL/SQL Log Level Name)

400

Logging messages that are called at the beginning and end of a routine. Detailed trace or debugging information that can help Oracle Support diagnose problems with a particular subsystem.

For example, the following error message might be associated with this log level:

Entering validateLogin.

TRACE:32

FINEST

(LEVEL_FINEST for PL/SQL Log Level Name)

300

Very detailed trace or debugging information that would be useful to an Oracle developer who is working on the product and who is familiar with implementation details of the subsystem that generates the message.

For example, the following error message might be associated with this log level:

Copying string from buffer xyz to 
buffer zzz.

Whenever an incident is created, a different log level, INCIDENT_ERROR, automatically appears in the corresponding log entry. This is the only context in which the INCIDENT_ERROR log level is used. For more information about working with incidents, see the Work with Automatically Created Incidents, Create Incidents Manually, and the Oracle Fusion Applications Incidents sections.

23.3.6 Precedence and Log Settings for Troubleshooting

During troubleshooting in a production environment, profile options will normally be used to increase or decrease the amount of information gathered in standard Oracle Fusion Applications log files. Where feasible, change profile option values at the USER level, rather than at the SITE level. This allows you to log more detailed information for a specific user who attempts to reproduce a problem, without cluttering your log file with unnecessarily detailed information for other users.

For Oracle Fusion applications that are written in Java or SOA, it is also possible for the odlLevel setting for the oracle.apps.appslogger logger in the logging.xml configuration file to affect the level of detail that is logged. If both the odlLevel setting and the AFLOG_LEVEL profile option have defined values, then the minimum of those two values takes precedence.

Unless Oracle Support advises you to change the value of the setting, it is strongly recommended that you keep your odlLevel setting for the oracle.apps.appslogger logger set to a value of All.

23.3.7 When Changes to Log File Configuration Settings Take Effect

For PL/SQL and C processes such as scheduled jobs, changes to log file profile options take effect in the same ways as changes to any Oracle Fusion Applications profile option values. For more information, see the section on maintaining common reference objects in the Oracle Fusion Applications Common Implementation Guide.

For user sessions, users may need to log out from an Oracle Fusion application and log in again to have changes to log profile options take effect.

23.3.8 View Logs from Fusion Applications Control

When there is a need to view log files for one Oracle Fusion Applications product family or product that uses standard logging functionality, one typical way that you can view the log files is to use Fusion Applications Control.

By default, use Fusion Applications Control to view standard log files for the Oracle WebLogic Server that host Oracle Fusion applications and standard log files generated by Java code within Oracle Fusion applications.

From Fusion Applications Control, it is possible to view log messages for different system components by selecting different targets. In the product family part of the navigation tree, the following target types allow viewing of log messages for Oracle Fusion Applications:

  • An entire product family. When selecting this target type and view log files, you view the aggregated logs for all of the servers and clusters in the selected product family's domain.

  • A particular Oracle Fusion application, such as Procurement, sometimes called an Oracle Fusion Applications cluster application. When you select this target type and view log files, you view the aggregated logs for all of the servers in the selected cluster.

  • A particular instance of an Oracle Fusion application deployed to a Managed Server. When you select this target type and view log files, you view the log for the selected individual Managed Server.

The Fusion Applications Control page also gives you access to log files for the following target types in the farm part of the navigation tree, but the functionality used to view those logs is part of Fusion Middleware Control.

  • A particular Oracle WebLogic Server domain

  • A particular server cluster

  • A particular server within a particular server cluster

For information about viewing Oracle Fusion Middleware log files, including log files for Oracle Enterprise Scheduler and Oracle Enterprise Crawl and Search Framework, see the Viewing and Searching Log Files and the Viewing Log Files and Their Messages Using Fusion Middleware Control sections in the Administering Oracle Fusion Middleware.

To view the contents of Oracle Fusion Applications logs from Fusion Applications Control:

  1. From the navigation pane, select the target for which you want to display log contents.

    In the part of the navigation tree for the product family, you can display logs for the following kinds of targets:

    • A product family target lets you display the aggregated log entries for all of the Oracle Fusion applications in the selected product family. For example, Financials is a product family target that appears as a top-level folder in the navigation tree.

    • An Oracle Fusion Applications cluster application target lets you display the aggregated logs for all of the Managed Servers that run the selected application, including the logs for any other Oracle Fusion applications that run on those Managed Servers. For example, if you expand the product family, Financials, and then expand Fusion Applications, then PayablesApp is a cluster application target.

    • An Oracle Fusion application instance target lets you display the log entries for the selected application on the selected sever. For example, if you expand the product family, Financials, and then expand Fusion Applications, and then expand PayablesApp, then PayablesApp (PayablesServer_1) is an application instance target.

    When you select a target, the header of the context pane displays a dropdown menu name that depends on the target type:
    • For a product family target, the menu name is Product Family.

    • For an Oracle Fusion Applications cluster application target, the menu name is Fusion Cluster Application.

    • For an Oracle Fusion application instance target, the menu name is Fusion J2EE Application.

    Alternatively, to view a log file for an Oracle Fusion Middleware target, then select such a target from the farm part of the navigation tree. For more information about viewing log files for Oracle Fusion Middleware components, see the Viewing Log Files and Their Messages Using Fusion Middleware Control section in the Administering Oracle Fusion Middleware.

  2. In the context pane, from the dynamic target menu, choose Logs, then View Log Messages to display the log messages screen.