log4j2 Tutoriel
Démarrer avec log4j2
Recherche…
Remarques
Cette section fournit une vue d'ensemble de ce qu'est log4j2 et pourquoi un développeur peut vouloir l'utiliser.
Il devrait également mentionner tous les sujets importants dans log4j2, et établir un lien avec les sujets connexes. La documentation de log4j2 étant nouvelle, vous devrez peut-être créer des versions initiales de ces rubriques connexes.
Pourquoi pas Log4j 1.x?
Log4j 1.x est en fin de vie à compter du 5 août 2015. [1] [2]. Apache Log4j 2 est le successeur de Log4j 1.x. fournit des liaisons pour les projets qui dépendent de Log4j 1.x, mais souhaite mettre à niveau vers Log4j 2. Outre la compatibilité avec Log4j 1.x, la compatibilité est assurée pour les API SLF4J, Commons Logging et java.util.logging.
[1] https://logging.apache.org/log4j/1.2/
[2] https://blogs.apache.org/foundation/entry/apache_logging_services_project_announces
Installation ou configuration
Ce serait une configuration de base dans laquelle nous enverrons tous les messages de journal à la console et à un fichier journal.
Commençons par les bibliothèques. Utilisera maven pour cela:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.8.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8.2</version>
</dependency>
Ensuite, nous allons écrire le fichier log4j2.properties (j'utiliserai un fichier de propriétés dans ce cas). Nous allons le mettre dans le chemin de contexte, dans maven il devrait être dans le dossier de ressources (src / main / resources dans la plupart des cas)
name=PropertiesConfig
property.filename = logs
appenders = console, file
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=${filename}/propertieslogs.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
loggers=file
logger.file.name=com.es.form.studio
logger.file.level = debug
logger.file.appenderRefs = file
logger.file.appenderRef.file.ref = LOGFILE
rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
Pour utiliser cet exemple, vous devez modifier logger.file.name = com.es.form.studio afin qu'il cible le package de votre choix. Si vous ne le faites pas, le fichier n'affichera aucun journal.