Log entry format

This topic describes the format of Endeca Server log entries, including their message types and log levels.

As an example of an error message, assume that you use the disable-dd command on a nonexistent data domain (such as misspelling "test" as "text"). The command fails and the resulting error in the command window is:
C:\Oracle\Middleware\EndecaServer7.6.0\endeca-cmd>endeca-cmd disable-dd text
SEVERE: Error while invoking endpoint "http://localhost:7001/endeca-server/ws/manage" 
from client endeca-cmd encountered a problem.
caused by:
The Endeca Server returned an error: OES-000095: No such data domain: text
caused by:
OES-000095: No such data domain: text
  OES-000095: No such data domain: text
In addition, the full error (including exception information) is also logged in the AdminServer-diagnostic.log file in this format:
[2013-10-21T16:31:16.384-04:00] [AdminServer] [ERROR] [OES-000066] [com.endeca.opmodel.ws.ManagePortImpl]
[tid: [ACTIVE].ExecuteThread: '34' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] 
[ecid: 0000K7ShiBy9lZZ_TlDCic1IPOwH000001,0:1] [WEBSERVICE_PORT.name: managePort] 
[APP: oracle.endecaserver#1.0@7.6.0.0.0] [J2EE_MODULE.name: endeca-server] [WEBSERVICE.name: manage] 
[J2EE_APP.name: oracle.endecaserver_1.0@7.6.0.0.0] OES-000066: Service error: 
com.endeca.cluster.ClusterException$NoSuchDataDomainException: 
OES-000095: No such data domain: text com.endeca.cluster.ClusterException$NoSuchDataDomainException: 
OES-000095: No such data domain: text[[
	at com.endeca.cluster.Cluster.setDataDomainEnabled(Cluster.java:534)
	at com.endeca.opmodel.ws.ManagePortImpl.disableDataDomain(ManagePortImpl.java:418)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
 ...
	at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
]]
In the message, the fields map to the following attributes:
Log entry field Meaning
[2013-10-21T16:31:16.384-04:00] The timestamp, which is the date and time when the message was generated.
[AdminServer] The organization ID for the originating component, which is the WebLogic Admin Server.
[ERROR] The ODL message type. See the table below for possible values.
[OES-000095] The message ID that uniquely identifies the message within the component.

The ID consists of the prefix OES (representing the component), followed by a dash, then a number.

[com.endeca.opmodel.ws.ManagePortImpl] The component ID, which identifies the Endeca Server component that originated the message.
[tid: [ACTIVE].ExecuteThread: '34' for queue: 'weblogic.kernel.Default (self-tuning)'] The ID of the thread that generated the message.
[userId: <anonymous>] The name of the user whose execution context generated the message.
[ecid: 0000K7ShiBy9lZZ_TlDCic1IPOwH000001,0:1] The Execution Context ID (ECID), which is a global unique identifier of the execution of a particular request in which the originating component participates.
[WEBSERVICE_PORT.name: managePort] Supplemental Attribute that contains a component-specific attribute about the event.
[APP: oracle.endecaserver_1.0@7.6.0.0.0] Application ID for the Endeca Server application.
[J2EE_MODULE.name: endeca-server] Supplemental Attribute that contains a component-specific attribute about the event.
[WEBSERVICE.name: manage] Supplemental Attribute that contains a component-specific attribute about the event.
[J2EE_APP.name: oracle.endecaserver_1.0@7.6.0.0.0] Supplemental Attribute that contains a component-specific attribute about the event.
[OES-000066: Service error: ...] Message Text. The text of the error message.

Message types and levels

The WebLogic loggers for Endeca Server are configured with the amount and type of information written to log files, by specifying the message type and level. For each message type, possible values for message level are from 1 (highest severity) through 32 (lowest severity). Generally, you need to specify only the type (that is, you do not need to specify the level).

When you specify the type, WebLogic returns all messages of that type, as well as the messages that have a higher severity. For example, if you set the message type to WARNING, WebLogic also returns messages of type ERROR.

The following shows the message types and the most common levels for each type, as well as the ODL log-level mapping to the Java equivalent.
ODL message type Message level Java equivalent Description
ERROR 1 SEVERE A serious problem that requires immediate attention from the administrator and is not caused by a bug in the product.
WARNING 1 WARNING A potential problem that should be reviewed by the administrator.
NOTIFICATION 1 INFO A major lifecycle event such as the activation or deactivation of a primary sub-component or feature. Level 1 is the default level for NOTIFICATION.
NOTIFICATION 16 CONFIG A finer level of granularity for reporting normal events.
TRACE 1 FINE Trace or debug information for events that are meaningful to administrators, such as public API entry or exit points.
TRACE 16 FINER Detailed trace or debug information that can help Oracle Support diagnose problems with a particular subsystem.
TRACE 32 FINEST Very detailed trace or debug information that can help Oracle Support diagnose problems with a particular subsystem.
The ERROR, WARNING, and NOTIFICATION with level 1 types have no performance impact. The performance impact on the other types and levels are as follows:
  • NOTIFICATION with level 16: Minimal performance impact.
  • TRACE with level 1: Small performance impact. You can enable this level occasionally on a production environment to debug problems.
  • TRACE with level 16: High performance impact. This level should not be enabled on a production environment, except on special situations to debug problems.
  • TRACE with level 32: Very high performance impact. This level should not be enabled in a production environment. It is intended to be used to debug the product on a test or development environment.