Talend Studio includes
the Apache logging utility Log4j to provide logging at runtime. You can enable or disable
Log4j loggers in components and customize the Log4j configuration globally for the
project.
ⓘAvailable in:
Big Data
Big Data Platform
Cloud Big Data
Cloud Big Data Platform
Cloud Data Fabric
Data Fabric
Real-Time Big Data Platform
Warning: Following the Log4j2 security issue
(CVE-2021-44228), make sure to disable Log4j loggers when you run Spark Batch and Spark
Streaming Jobs with Dataproc 2.x and onwards, Azure Synapse and HD Insight 4.0
distributions.
To avoid any Job failure, clear the Activate log4j in
components check box from the Log4j view in or clear the log4jLevel check box from the
Advanced settings view of your Spark Job.
Procedure
-
On the toolbar of the Studio main window, click
or
click from the menu bar to open the Project Settings
dialog box.
-
In the tree view of the dialog box, click the Log4j node to
open the Log4j view.
-
Select the Activate log4j in components check box to
activate the Log4j feature.
By default, the Log4j feature
is activated and Log4j 2 is enabled when a project is created.
When a project is imported from Talend
7.2 or an earlier version, which only supports Log4j 1, the deprecated Log4j 1 is
selected from the Log4j version drop-down list by default.
All POM files for the project will be synchronized when you change the Log4j
version.
ⓘAvailable in:
Cloud API Services Platform
Cloud Big Data
Cloud Big Data Platform
Cloud Data Fabric
Cloud Data Integration
Cloud Data Management Platform
Data Fabric
Note: If you need to deploy your Jobs to
Talend Cloud,
the use of Log4j 2 requires Talend Remote Engine 2.8.1 or higher.
-
If needed, change the global Log4j configuration by modifying the XML instructions
in the Log4j template area.
For example, to configure the root logger for Log4j 2 to output all debug or
higher messages, go to the Loggers section and set the value
of the level attribute of the root node
to debug.
If you have installed the 8.0 R2022-09 Studio monthly update or a later one
provided by Talend, the Log4j 2 MDC (Mapped Diagnostic Context) is populated with key-value pairs.
These extra log attributes help you easily identify the thread in which log data
is generated when all log messages from multiple threads are written into a single
file. For more information about Log4j 2 MDC, see Log4j 2
API - Thread Context.
To include all extra log attributes when writing logs, add %X
in
the PatternLayout
section.
<PatternLayout pattern="[%-5level] %d{HH:mm:ss} %logger{36}- %X %msg%n" />
To include specific log attributes when writing logs, add %X{key} %X{key2}
... %X{keyN}
in the PatternLayout
section, where
{keyN}
is the key of the corresponding log attribute. You can
also use characters like commas to separate attributes to easily identify them.
The following example includes the _pid and
_startTimestamp attributes when writing logs.
<PatternLayout pattern="[%-5level] %d{HH:mm:ss} %logger{36}- %X{_pid}, %X{_startTimestamp} %msg%n" />