Debug Profile Service logging

Debug Profile Service logging offers a customizable logging service that leverages various log levels and adheres to a standard server log format. Additionally, the server framework of IBM z/OS Liberty Embedded enables further logging capabilities, such as First Failure Data Capture (FFDC) services, which log potential failure events, as well as the HTTP Access Log service for recording and troubleshooting incoming client requests.

In this topic, you can find configuration instructions, and file locations to assist in customizing and locating logs as required.

Application Logging

Debug Profile Service utilizes log4j2 to manage its logging mechanism, where each API has its own designated log service name.

The following log services are available:
Each log service supports configurable log levels to control the verbosity of the logs. The following log levels are available:
  • OFF: Disables logging for the service.
  • INFO: Provides informational messages that highlight the progress of the application.
  • ERROR: Indicates serious issues that have occurred, often requiring immediate attention.
  • DEBUG: Offers detailed information, typically of interest only when diagnosing problems.
  • WARN: Flags potentially harmful situations that do not immediately cause an error.
The logs are written to the server’s job standard output (STDOUT) and follow a consistent format:
<timestamp> <log level> <log service name> - <log message>
where,
<timestamp>
The time at which the log entry was created, formatted as HH:mm:ss.SSS
<log level>
The severity level of the log entry (OFF, INFO, ERROR, DEBUG, WARN)
<log service name>
The name of the log service that generated the log entry.
<log message>
The actual message describing the event or error.

By default, the log level for each service is set to INFO. To configure the log levels for each service, see the Debug Profile Service Configuration file, eqaprof.env, and restart the server for changes to take affect.

First Failure Data Capture (FFDC) Logging

IBM z/OS Liberty Embedded server unifies logging and tracing with a feature known as First Failure Data Capture (FFDC) services. It collects information about an event that might lead up to a failure. The FFDC logs are written in the work directory: "${WRKDIR}"/eqaProfile/logs/ffdc, where:
  • "${WRKDIR}" is defined in EQAW.SEQASAMP(EQAPROF).
  • The eqaProfile/logs directory is created when the IBM z/OS Liberty Embedded server is started, if it does not exist.
  • The ffdc directory is created when an exception occurs, if it does not exist. You can clean log files in the ffdc directory if there are too many.
By default, the FFDC logs are always enabled.

HTTP Access Logging

IBM z/OS Liberty Embedded server provides a method to record all inbound client requests that are handled by HTTP endpoints through a service called HTTP Access Log. The HTTP access logs are written in the work directory: "${WRKDIR}"/eqaProfile/logs/trace.log.

Use this trace method to complete the following tasks:
  • Maintain a record of inbound HTTP requests made to the server.
  • Debug whether an HTTP request made is to the server.
  • Log inbound or outbound HTTP headers for debugging purposes.
By default, the HTTP access logs are disabled. To enable and configure them, see the Debug Profile Service Configuration file, eqaprof.env. The trace.log file will be created when the IBM z/OS Liberty Embedded server is started, if it does not exist.