Accéder au contenu principal Passer au contenu complémentaire

Activer et configurer Log4j

Le Studio Talend inclut Log4j, l'utilitaire de log d'Apache. Cet utilitaire fournit des informations de log à l'exécution. Vous pouvez activer ou désactiver Log4j pour les composants et personnaliser sa configuration sur tout le projet.

Note InformationsAvertissement : Relativement au problème de sécurité Log4j 2 (CVE-2021-44228), assurez-vous de désactiver tous les loggers Log4j lorsque vous exécutez des Jobs Spark Batch et Spark Streaming avec les distributions Dataproc 2.x, Azure Synapse et HDInsight 4.0.

Pour éviter tout échec de Job, décochez la case Activate log4j in components dans la vue Log4j dans File > Edit Project Properties > Project Settings ou décochez la case log4jLevel dans la vue Advanced settings de votre Job Spark.

Procédure

  1. Dans la barre d'outils de la fenêtre principale du Studio Talend, cliquez sur Project settings ou cliquez sur File > Edit Project Properties dans la barre de menu pour ouvrir la boîte de dialogue Project Settings.
  2. Dans l'arborescence de la boîte de dialogue, cliquez sur le nœud Log4j afin d'ouvrir la vue Log4j.
    Vue Log4j.
  3. Cochez la case Activate log4j in components pour activer la fonctionnalité Log4j.

    Par défaut, la fonction Log4j est activée et lorsqu'un projet est créé, Log4j 2 est activé.

    Lorsqu'un projet est importé à partir d'une version Talend 7.2 ou précédente, qui supporte uniquement Log4j 1, une liste déroulante Log4j version est affichée et Log4j déprécié est sélectionné par défaut. Tous les fichiers POM pour le projet sont synchronisés lorsque vous modifiez la version de Log4j.

    Note InformationsRemarque : Si vous devez déployer vos Jobs dans Talend Cloud, l'utilisation de Log4j 2 requiert Talend Remote Engine 2.8.1 ou supérieure.
  4. Modifiez la configuration globale de Log4j en modifiant les instructions XML dans la zone Log4j template.
    Par exemple, pour configurer le log racine de Log4j 2, pour écrire tous les messages de niveau debug ou supérieur, allez dans la zone Loggers et configurez la valeur de l'attribut level du nœud root à debug.

    Log4j 2 MDC (Mapped Diagnostic Context) est alimenté avec les paires clé-valeur. Ces attributs de log supplémentaires vous permettent d'identifier aisément dans quel thread les données de log sont générées lorsque tous les messages de log provenant de plusieurs threads sont écrits dans un seul fichier. Pour plus d'informations concernant Log4j 2 MDC, consultez Log4j 2 API - Thread Context (uniquement en anglais) (en anglais).

    Logs d'exemple.

    Pour inclure tous les attributs de log supplémentaires lors de l'écriture des logs, ajoutez %X dans la section PatternLayout.

    <PatternLayout pattern="[%-5level] %d{HH:mm:ss} %logger{36}- %X %msg%n" />

    Pour inclure des attributs de log spécifiques lors de l'écriture des logs, ajoutez %X{key} %X{key2} ... %X{keyN} dans la section PatternLayout, où {keyN} est la clé de l'attribut de log correspondant. Vous pouvez également utiliser des caractères comme la virgule pour séparer les attributs, afin de les identifier clairement. L'exemple suivant inclut les attributs _pid et _startTimestamp lors de l'écriture des logs.

    <PatternLayout pattern="[%-5level] %d{HH:mm:ss} %logger{36}- %X{_pid}, %X{_startTimestamp} %msg%n" />

    Pour plus d'informations concernant la configuration de Log4j 2, consultez Configuring with XML (uniquement en anglais) (en anglais).

    Pour plus d'informations concernant la configuration de Log4j 1, consultez Log4jXmlFormat (uniquement en anglais) (en anglais).

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !