Je souhaiterais une configuration de fichier de propriétés log4j2 avec une console et un applicateur de fichiers roulants utilisant log4j2 qui peut utiliser différentes applications. La configuration du journal doit faire pivoter le journal dans l'environnement de production.Fichier de configuration des propriétés log4j2 très simple à l'aide de l'appender Console and Rolling File
Répondre
Je pense qu'il n'y a pas une telle norme de l'industrie pour la configuration ou la configuration log4j2
. Tout le monde change la configuration selon le besoin de l'application.
ci-dessous est un exemple de fichier de configuration de log4j2 ayant ConsoleAppender
et RollingFileAppender
-
status = warn
name= properties_configuration
# Give directory path where log files should get stored
property.basePath = ./log/
# ConsoleAppender will print logs on console
appender.console.type = Console
appender.console.name = consoleLogger
appender.console.target = SYSTEM_OUT
appender.console.layout.type = PatternLayout
# Specify the pattern of the logs
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n
# RollingFileAppender will print logs in file which can be rotated based on time or size
appender.rolling.type = RollingFile
appender.rolling.name = fileLogger
appender.rolling.fileName=${basePath}/app.log
appender.rolling.filePattern=${basePath}app_%d{yyyyMMdd}.log.gz
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n
appender.rolling.policies.type = Policies
# Rotate log file each day
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 1
appender.rolling.policies.time.modulate = true
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.delete.type = Delete
appender.rolling.strategy.delete.basePath = ${basePath}
appender.rolling.strategy.delete.maxDepth = 1
appender.rolling.strategy.delete.ifLastModified.type = IfLastModified
# Delete files older than 30 days
appender.rolling.strategy.delete.ifLastModified.age = 30d
# Mention package name here in place of example. Classes in this package or subpackages will use ConsoleAppender and RollingFileAppender for logging
logger.example.name = example
logger.example.level = debug
logger.example.additivity = false
logger.example.appenderRef.rolling.ref = fileLogger
logger.example.appenderRef.console.ref = consoleLogger
# Configure root logger for logging error logs in classes which are in package other than above specified package
rootLogger.level = error
rootLogger.additivity = false
rootLogger.appenderRef.rolling.ref = fileLogger
rootLogger.appenderRef.console.ref = consoleLogger
Merci beaucoup. C'est vraiment très utile. –
Désolé pour la réponse tardive. J'ai besoin d'ajouter l'adresse IP de l'hôte au fichier journal. Est-il possible sans modifier le code de code Java de l'application? –
@SubhajitPal Je pense que c'est possible. Cochez cette case [link] (https://logging.apache.org/log4j/2.x/manual/configuration.html#Property_Substitution). Un autre point important que c'est une question entièrement différente, alors vous devriez poser une nouvelle question. –
ce que vous entendez> qui peut être utilisé différentes applications. –
En fait, je suis à la recherche d'une configuration log4j2 standard selon les standards de l'industrie. Avec quelques changements, je peux l'utiliser dans l'application multiple de mon entreprise. –