Logging

The Digital Enterprise Suite (DES) and Digital Distributed Container (DDC) logging can be configured to integrate with a centralized logging system or a Security Information and Event Manager (SIEM).

Log Sources

Three different components of the DES and DDC emits logs that are routed on the standard output of the pod. Kubernetes is normally configured to route those logs toward a system capable of archiving them and analyzing them.

Application Logs

Application logs are at the application layer and each function of the pod output relevant information about the processing at different levels (info, warning, error, ...). Those logs are recommended to be on to properly audit and diagnose problems that may occur at runtime. They will contain for instance software error stack trace when a processing error occurs.

Application logs are turned on by default and can be turned off by setting the helm variable logging.app to false.

--set logging.app=false

Events Logs

Events logs are at the Asynchronous Events layer and log the basic information contained into emitted messages. These logs are recommended to be on unless a console emitter is configured to have better control on which events are logged.

Events logs are turned on by default and can be turned off by setting the helm variable logging.access to false.

--set logging.events=false

Access Logs

Access logs are at the web transport layer and will output requests and response information for all calls being made to the pod. Depending on your ingress strategy, those logs could be duplicated from your ingress log and you may want to consider turning them off.

Access logs are turned on by default and can be turned off by setting the helm variable logging.access to false.

--set logging.access=false

Log Format

The log format can be controlled using the logging.type helm variable. By default, the CONSOLE format will be used but other formats are supported.

To change the format, set the helm variable according to the desired format.

--set logging.type=<TYPE>
Type Description

CONSOLE

Logs are formatted to be human readable. This is the default value. This format is the easiest to read for a human but the most complex to parse by a system.

NONE

No logs are sent to the standard output.

JSON

Logs are formatted using the JSON Lines format (one JSON object per line) using agnostic JSON keys.

GCP

Logs are formatted using the JSON Lines format (one JSON object per line) using JSON keys aligned with the Google Cloud Platform (GCP) recommended keys for Cloud Logging.

AWS

Logs are formatted using the JSON Lines format (one JSON object per line) using JSON keys aligned with the Amazon Web Service (AWS) recommended keys for Cloud Watch.