Activating and configuring Log4j - Cloud - 8.0

Talend Studio User Guide

Version
Cloud
8.0
Language
English
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
Design and Development

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 File > Edit Project Properties > Project Settings or clear the log4jLevel check box from the Advanced settings view of your Spark Job.

Procedure

  1. On the toolbar of the Studio main window, click or click File > Edit Project Properties from the menu bar to open the Project Settings dialog box.
  2. In the tree view of the dialog box, click the Log4j node to open the Log4j view.
  3. 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.
  4. 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" />

    For more information about Log4j 2 configuration, see http://logging.apache.org/log4j/2.x/manual/configuration.html#XML.

    For more information about Log4j 1 configuration , see https://cwiki.apache.org/confluence/display/LOGGINGLOG4J/Log4jXmlFormat.