Eclipse Logging

Setting Logging Levels

Logging output is controlled via property java.log.levels. This can be changed at runtime via the admin portal. Be sure to refresh the property cache after changing:

The format is as per standard java logging - packagename.classname=LEVEL where LEVEL can be OFF, FINEST, INFO, WARNING, ERROR, CRITICAL. If a specific issue is being analysed, the EFT team may request that a logging level is changed so that the logs can be analysed. By default, logging is set to INFO level while some are good to stay on FINEST so that API calls can be logged. The recommended FINEST logs are as follows:

com.ukheshe.arch.conductor.http=FINEST - This logs all incoming and outgoing API calls along with a snippet of the request body. Great for an audit trail of all HTTP calls into Eclipse


Logging Format

Eclipse produces logs in a JSON format. The fields are as follows (additional fields may be present but these are the key fields):

{
   "hostName" : "{hostname of the server that produced the log e.g. myservera.com}",
   "level" : "{logging level e.g. DEBUG/INFO/WARN/ERROR}",
   "loggerName" : "{name of the logger e.g. com.ukheshe.arch.conductor.http}",
   "message" : "{Logging message}",
   "parentId" : "{Open telemetry tracing parent span id}",
   "sampled" : "{not useful}",
   "sequence" : 1742290,
   "spanId" : "{Open telemetry tracing span id}",
   "threadName" : "{Thread name e.g. v-quarkus-223771}",
   "timestamp" : "{date/time of the log message e.g. 2025-11-12T09:00:24.106Z}",
   "traceId" : "{Open telemetry tracing id}",
   "user.identity" : "{Identity of the user initiating the request that resulted in the log. e.g. apiuser}",
   "user.remoteaddr" : "{IP address of the user initiating the request that resulted in the log e.g. 34.226.134.242}",
   "user.tenantid" : "{Tenant id of the user (if its a tenant user e.g. 10}",
   "user.userid" : "{User id of the user initiating the request that resulted in the log. e.g. 123}",
   "stackTrace": "{Present if the log is of an exception}"

}

Logs are sent to Cloudwatch as well as available for ingestion on self-hosted environments. When ingested as JSON logs into ones preferred log analysis tool, one can analyse logs based on the provided JSON fields. The most common analysis is to search logs by traceId as this is the golden thread passed along through all systems for any API or ISO request into Eclipse. Alternatively, one can look at logs using text searches on the message field or for logs of a certain level