Utilisez log4j2 pour ajouter des numéros de ligne de code aux journaux

introduire:

La journalisation est un outil très important lors du développement et du débogage d’applications. En enregistrant l'état d'exécution de l'application et les messages d'erreur, nous pouvons plus facilement localiser et résoudre les problèmes. Afin de mieux comprendre la source des messages de journal, il est courant d'augmenter le numéro de ligne de code. Dans cet article, nous expliquerons comment utiliser log4j2 pour ajouter des numéros de ligne de code aux journaux.

Configuration

Dans log4j2, afin d'inclure le numéro de ligne de code dans le journal, nous devons configurer les éléments suivants :

1. Configurez l'enregistreur :

Dans le fichier de configuration log4j2.xml (ou log4j2.properties), recherchez le Logger pour lequel vous souhaitez ajouter le numéro de ligne de code. Dans la configuration du Logger, ajoutez un attribut `includeLocation="true"`. Cela amènera le Logger à inclure des informations sur l'emplacement du code dans le message du journal.

Exemple de configuration :

<Logger name="com.example.MyClass" level="debug" additivity="false">
    <AppenderRef ref="Console"/>
    <Property name="includeLocation">true</Property>
</Logger>

2. Configurez PatternLayout :

Dans PatternLayout, nous pouvons utiliser le modèle `%L` pour représenter les numéros de ligne de code. Ajoutez `%L` à votre mode de sortie de journal afin que le message de journal inclue les informations sur le numéro de ligne de code.

Exemple de configuration :

%d{MM-dd_HH:mm:ss} %L %m%n

Une configuration plus complète :

<RollingFile name="TestFile" fileName="${sys:system.logPath}/testFile.log"
                     filePattern="${sys:system.logPath}/testFile-%d{yyyy-MM-dd-HH-mm-ss}.log">
            <PatternLayout pattern="%d{MM-dd_HH:mm:ss} %L %m%n"/>
            <Policies>
                <SizeBasedTriggeringPolicy size="128 MB"/>
            </Policies>
            <DefaultRolloverStrategy max="2">
                <Delete basePath="${sys:system.logPath}">
                    <IfFileName glob="testFile-*.log"/>
                    <IfAccumulatedFileCount exceeds="1"/>
                </Delete>
            </DefaultRolloverStrategy>
        </RollingFile>

Remarque : Dans log4j, nous pouvons utiliser le modèle `%L` pour obtenir le numéro de ligne de code. Mais dans log4j2, ce modèle est obsolète, nous devons donc utiliser `%L` dans le cadre de PatternLayout.

3. Configuration des applications :

Enregistrez et redémarrez votre application pour que la configuration prenne effet. Lorsque la journalisation est déclenchée, le message du journal contiendra désormais des informations sur le numéro de ligne de code.

Résumer:

En utilisant la configuration de log4j2, nous pouvons facilement ajouter des numéros de ligne au journal. Ceci est très utile aux développeurs pour localiser les problèmes lors du débogage et du dépannage. En configurant l'attribut `includeLocation="true"` de Logger et le mode `%L` dans PatternLayout, nous pouvons obtenir des messages de journal clairs, qui contiennent des informations sur le numéro de ligne de code.

Liens de référence :

documentation log4j2

Je suppose que tu aimes

Origine blog.csdn.net/Mint6/article/details/130779247
conseillé
Classement