Accéder au contenu principal

Exécuter une Route de microservice en utilisant une configuration Log4j externe

Availability-noteDéprécié·e

Cette section vous montre comment exécuter une Route de microservice en utilisant une configuration Log4j externe.

Le microservice est construit à partir d'une simple Route contenant un composant cTimer et un composant cLog.

Exemple de Route.

Le composant cTimer va déclencher cinq fois l'échange de messages.

Vue Basic settings (Paramètres simples) du composant cTimer.

Le composant cLog va enregistrer les échanges de messages. Le niveau de log est configuré sur WARN, qui est la configuration par défaut du Studio Talend.

Vue Basic settings (Paramètres simples) du composant cLog.

Lorsque la Route est exécutée dans le Studio Talend, le résultat suivant s'affiche dans la console.

Vue Basic run (Exécution simple).

Après avoir construit la Route de microservice (fichier .jar), vous pouvez l'exécuter dans une fenêtre d'invite de commande :

  • Pour exécuter le microservice avec la configuration par défaut, utilisez la commande suivante :
    java -jar demo_0.1.jar

    Les logs de messages suivants s'affichent, de manière identique au résultat d'exécution du Studio Talend.

    Messages de log dans l'invite de commande.
  • Pour exécuter le microservice avec une configuration Log4j personnalisée, vous pouvez utiliser la propriété spring.config.additional-location pour appeler le fichier personnalisé log4j.xml contenu dans un dossier de configuration externe. Un exemple de configuration Log4j contenu dans le dossier config du répertoire jar du microservice s'affiche ci-dessous pour fournir un fichier tesb.log lorsque le microservice démarre.
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
        <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <appender name="rollingFile" class="org.apache.log4j.RollingFileAppender">
            <param name="file" value="tesb.log"/>
            <param name="MaxFileSize" value="1024KB"/>
            <param name="MaxBackupIndex" value="10"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <root>
            <priority value="info"/>
            <appender-ref ref="stdout"/>
            <appender-ref ref="rollingFile"/>
        </root>
    </log4j:configuration>

    Pour utiliser cette configuration, exécutez la commande suivante :

    java -jar demo_0.1.jar --spring.config.additional-location=./config

    Vous pouvez également utiliser la propriété logging.config pour appeler le fichier de configuration Log4j :

    java -jar demo_0.1.jar --logging.config=./config/log4j.xml

    Les logs de messages suivants s'affichent et sont écrits dans le fichier tesb.log du répertoire dans lequel est situé le fichier jar du microservice.

    Messages de log dans l'invite de commande.

    Le fichier tesb.log est créé :

    Le fichier tesb.log se situe dans Computer > New Volume (F:) .

    Les logs de messages sont écrits dans le fichier tesb.log :

    Contenu du fichier tesb.log.

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 !