Server logging
The server treats system logging differently from trace logging.
For both the Content Engine and Process Engine, system logging is always enabled and the log messages are written to files whose location and names are determined by the server. For more information, see Viewing Content Platform Engine logs in traditional deployments or Viewing Content Cortex logs in containerized deployments.
The location of the trace log files can be controlled by specifying the trace file location on the Trace Subsystem dialog. The number of log files to keep and the log file rollover size (in MB) can also be specified. The number of log files and rollover size settings are used for both system logs and trace logs for the Content Engine and the Process Engine. By default, the number of log files is 5 and the rollover size is 100MB. For more information, see topic Enabling trace logging.
Content Engine trace logging
Content Engine logging categorizes the messages by the logical subsystem which produces them, for example, by the component that interfaces with a GCD or object store database or that interacts with an LDAP directory. Trace logging is controlled through the Trace Logging Configuration object, which has a set of properties through which the amount of logging produced by each subsystem can be tailored. This can be achieved through the Administration Console for Content Platform Engine or programmatically by using the API.
| Property | Abbreviation | Description |
|---|---|---|
| APITraceFlags | API | Logs information relative to Content Engine Java™ API operations within the Content Platform Engine process, for example, by the Administration Console for Content Platform Engine or Process Engine. |
| AsynchronousProcessingTraceFlags | ASYN | Logs information relative to the processing portion of an asynchronous event, including document classification and security propagation. |
| AuditDispositionTraceFlags | AUDT | Logs information relative to audit disposition. |
| CBRTraceFlags | CBR | Logs information relative to content-based retrieval, including indexing, searching, and so on. |
| CFSDaemonTraceFlags | CFSD | Logs information relative to the Content Federation System filesystem daemon. |
| CFSImportAgentTraceFlags | CFSI | Logs information relative to the CFS Import Agent subsystem. |
| CodeModuleTraceFlags | CMOD | Logs information relative to code module functionality. |
| ContentCacheTraceFlags | CCHE | Logs information relative to content caching operations, which cache document content in the file system on the local server. |
| ContentStorageTraceFlags | CSTG | Logs information relative to the storage of content. |
| DatabaseTraceFlags | DB | Logs information relative to database operations. |
| DirectoryTraceFlags | LDAP | Logs information relative to the Lightweight Directory Access Protocol (LDAP) directory status. |
| EJBTraceFlags | EJB | Logs information relative to the Enterprise Java Beans (EJB) transport layer, which is a component architecture for the development and deployment of object-oriented, distributed, enterprise-level applications. |
| EngineTraceFlags | ENG | Logs information relative to the Content Engine server core. |
| ErrorTraceFlags | ERR | Logs information relative to error handling operations. |
| EventsTraceFlags | EVNT | Logs information relative to general event processing. |
| FixedContentProviderTraceFlags | FCPV | Logs information relative to various fixed content providers. |
| GCDTraceFlags | GCD | Logs information relative to the Global Configuration Database (GCD) and its operations. |
| HandlerTraceFlags | HDLR | Logs information relative to custom server handler code. |
| MetadataTraceFlags | MCHE | Logs information relative to metadata cache operations. |
| PublishTraceFlags | PUBL | Logs information relative to publishing operations. |
| ReplicationTraceFlags | REPL | Logs information relative to the Replication subsystem. |
| SearchTraceFlags | SRCH | Logs information relative to search and query operations. |
| SecurityTraceFlags | SEC | Logs information relative to client and server components that are used to authenticate (layered over the authentication provider) and authorize user access to Content Engine objects. |
| ServerCommunicationTraceFlags | COMM | Logs information relative to the server communication subsystem. |
| SSITraceFlags | SSI | Logs information relative to integration with the Single-document Storage Interface (SSI), which is an interface between the Content Engine and FileNet® Image Services. |
| SweepTraceFlags | SWP | Logs information relative to the Sweep subsystem |
| ThumbnailGenerationTraceFlags | THMG | Logs information relative to the ThumbnailGeneration subsystem |
| WSITraceFlags | WSI | Logs information relative to the Web Services Interface transport layer to Content Engine. |
| Constant | Value | Description |
|---|---|---|
SUMMARY
|
2 | Enables minimal high-level logging by providing summary information for all operations. This setting does not significantly affect system performance. |
MODERATE
|
4 | Enables more detailed high level logging than the SUMMARY option for all
operations (includes all SUMMARY level information). This setting will have some
impact on system performance. |
DETAIL
|
8 | Enables the most detailed logging by providing detailed information for all operations that
are primarily used to aid in debugging (includes all SUMMARY and
MODERATE level information). This setting significantly affects system performance,
and in some cases, can have a severe impact. |
TIMER
|
1 | Provides the length of time (in milliseconds) that Content Engine takes to complete an operation, such as uploading a file. This setting does not significantly impact system performance. |
- TraceLoggingEnabled
-
This property acts as a “master switch” for Content Engine trace logging. When set to true, logging is enabled as determined by the subsystem properties. When set to false, all trace logging is suppressed regardless of the subsystem settings.
- OutputLocation
- This property specifies the path where the trace log file should be written. If not set, the trace log is written to the same location as the system log. Otherwise, the property value should specify a path which is valid (exists) for all the server instances to which the Trace Logging Configuration applies. To specify the OutputLocation in ACCE using the Trace File Location field, see Enabling trace logging.
Thread-based trace enablement
A mechanism allows finer-grained thread-based control over trace enablement.
To understand the reason behind the mechanism, consider a scenario where you are investigating an issue with a sweep which requires enabling not only Sweep subsystem tracing but also Search and Database.
Previously, enabling Search and Database would enable that tracing for all server threads, resulting in an explosion of log file size, compromised performance, and pollution of the trace entries of interest by non-relevant traces from other threads. Until this improved enablement, the only way to extract the required traces was to identity the threads running sweep activities and manually filter the large trace logs by those thread IDs.
The new mechanism applies that filtering automatically and at source, so that traces by threads that are not running sweep activities, for example, are suppressed. This suppression ensures that log files contain only entries that are produced by sweep threads.
First, each running thread is associated with a trace subsystem. For foreground threads that are serving client requests, that subsystem is EJB. For background threads, it is the subsystem of the background task that is currently executing in that thread, as shown in the table.
com.filenet.engine.trace.ThreadSubsystemsEnabled is used,
with the value giving a comma-separated list of the subsystem identifiers for the threads in which
tracing should be enabled, for
example:-Dcom.filenet.engine.trace.ThreadSubsystemsEnabled=SWPIn the threads for which tracing is enabled by this mechanism, the normal trace flag settings apply, so in this example you enable detail tracing for Sweep, Search, and Database as usual through the Administration Console for Content Platform Engine.
The subsystem identifiers given in the ThreadSubsystemsEnabled setting are the
abbreviations from the table given earlier and are interpreted case-insensitively.
Bypassing the trace logging configuration
In some circumstances a server problem may prevent loading of the trace logging configuration or may prevent access to the Administration Console for Content Platform Engine or the API to enable tracing logging. To obtain diagnostic information to repair such problems it may therefore be necessary to enable tracing without reference to the trace logging configuration. This is accomplished in two parts:
- For Content Engine tracing in these circumstances, set the configuration parameter
skipTLC to true, for example by adding
-DskipTLC=trueto the startup command for the application server JVM hosting the Content Platform Engine. - For Process Engine tracing in these circumstances, set the configuration parameter
skipPETLC to true, for example by adding
-DskipPETLC=trueto the startup command for the application server JVM hosting the Content Platform Engine.
Process Engine trace logging
Similar to the Content Engine, the property TraceLoggingEnabled exists for the
Workflow subsystem. This property acts as a “master switch” for Process Engine trace logging. When
set to true, logging is enabled as determined by the subsystem properties. When set to false, all
trace logging is suppressed regardless of the subsystem settings. To enable this property in ACCE,
see Enabling trace logging.
The following table identifies the Process Engine subsystems for which trace options can be enabled. In addition, the abbreviation that is used to identify a particular subsystem in the output trace log file is also provided.
| Trace option | Abbreviation | Description |
|---|---|---|
| Application space | APP_SPACE | Trace application space changes such as configuration changes or API calls from client applications. |
| Archiver | ARCHIVER | Trace archiving. |
| Asynchronous RPC | ASYNC_RPC | Trace asynchronous RPCs. Used for long-running RPCs, such as configuration transfer, peverify, and pelog. |
| Asynchronous tools | ASYNC_TOOLS | Trace the tools that use asynchronous communication to the workflow system such as pelog. |
| Case Synchronization | CASE_SYNC | Trace synchronization of case data. Used with IBM® Case Manager. |
| Case Analyzer publishing | CA_PUBLISHING | Trace the Case Analyzer event publishing process. |
| Case Analyzer collection | CA_COLLECTION | Trace the event collection process that queries the event logs. |
| Case Analyzer database | CA_DATABASE | Trace the database query statements that are run by Case Analyzer. |
| Case Analyzer RPC | CA_RPC | Trace the remote procedure calls from the Administration Console for Content Platform Engine. |
| Case Analyzer upgrade | CA_UPGRADE | Trace the Case Analyzer upgrade operation. |
| Case Analyzer OLAP | CA_OLAP | Trace the interaction with the OLAP database that is conducted through the OLAP connector. |
| Case History Publishing | CH_PUBLISHING | Trace the Case History event publishing process. |
| Case History Collect | CH_COLLECTION | Trace the event collection process that queries the event logs for Case History. |
| Case History Database | CH_DATABASE | Trace the database query statements that are run by Case History. |
| Case History RPC | CH_RPC | Trace the remote procedure calls from the Case History client. |
| Case History Performance | CH_PERFORMANCE | Trace the Case History event processing performance. |
| Case History Upgrade | CH_UPGRADE | Trace the Case History upgrade. |
| Component Manager | CM | Trace Component Manager. Returns detailed logging information about Component Manager. |
| RDB Objects | RDB | Trace RDB database access, which is related to isolated region tablespaces. |
| Database access | DBI_MSGS | Trace database access. This option outputs the SQL statements that are used by workflow system, along with the values of the substitution variables. Setting this option automatically sets the database time option. |
| Database outputs | DBI_OUT | Trace the field values and outputs of database statements, such as SELECT, UPDATE, and so on. |
| Database time | RDB_TIME | Trace database timings. This prompt appears only if you answer no to the database access prompt. |
| Database transaction | DBI_TRAN | Trace an entire database transaction from beginning to end. |
| Environment cache | ENV | Trace workflow system interactions with its environment record cache where it keeps track of workflow system user and group membership information. |
| Event exporter | EVENT_EXPORTER | Trace the core framework for Case Analyzer and Case History, which drives the publishing and collection processes. |
| Exceptions | EXCEPTION | Trace exceptions occurring within the server. |
| Expression Parsing | EXPR | Trace expression parsing. |
| External RPCs | EXTERNAL | Trace external remote procedure calls (RPCs). Traces calls within the Content Platform Engine server. |
| Farming | FARMING | Trace activities that are related to a farmed system. |
| Heartbeat | VWSVRTIME | Trace the heartbeat task activities. |
| Instruction Sheet Interpreter | ISI | Trace Instruction Sheet Interpreter (ISI) process. |
| J2EE | J2EE | Trace calls that are related to Java Platform, Enterprise Edition. |
| Log Manager | LOG | Trace log manager process. |
| Email Notification | NOTIFY | Trace email notifications. |
| Object Service RPCs | OBJSVC | Trace Object Service usage. |
| API RPC | RPC | Trace communication RPCs between the API client and workflow server. |
| API RPC input | RPC_IN_PARAMS | Trace API input parameters to workflow system RPCs. |
| API RPC output | RPC_OUT_PARAMS | Trace API output parameters to workflow system RPCs. |
| Rules | RULES | Trace workflow system interactions with the Rules Engine and rules processing. |
| Security calls | SEC | Trace security calls. |
| Stored Procedure Calls | STORED_PROC | Trace the execution of database instruction stored procedure calls. |
| Workflow Termination | WFTERM | Trace calls made to the workflow termination process (vwdone). |
| Transfer | TRANSFER | Trace transfer processes. |
| Vwtime | VWTIME | Trace the processing of the timer task. |
| Web Services | WEBSERVICES | Trace workflow system interactions with applications that use the Web Services protocol. |
| XML Parser | XMLPARSER | Trace parsing of XML. |
| Dynamic Task | DYN_TASK | Trace dynamic tasks. (Dynamic tasks are synonymous with IBM Case Manager ad hoc tasks.) |
Additionally, in cases such as tracing system startup where configuration via ACCE may not be possible, Process Engine trace logging is configured either by a configuration file in the server deployment directory or interactively through vwtool. See trace logging for more information.