如何在 IDE 中为运行时使用一个 log4j2 配置文件,为 packaging/deployment 使用另一个 log4j2 配置文件?
How to use one log4j2 configuration file for runtime in IDE and another log4j2 configuration file for packaging/deployment?
使用 Eclipse 06-2021、Maven、log4j2。
我正在使用 log4j2 框架登录我的应用程序。我在 log4j2.properties 文件的资源文件夹中创建了配置。
我在那里定义了一些记录器及其级别:
...
logger.filelogconvert.appenderRef = FileLogConvert
logger.fileloggeneral.appenderRef = FileLogGeneral
rootLogger.appenderRef.console.ref = FileLogGeneral
logger.fileloggeneral.level = warn
rootLogger.level = warn
但是当我想部署应用程序时我需要重写这个文件,因为我需要将级别从 info
更改为 warn
或更改 appender/logger 引用。
使用 log4j2-test.properties 文件:https://logging.apache.org/log4j/2.x/manual/configuration.html#AutomaticConfiguration
...
logger.filelogconvert.appenderRef = Console
logger.fileloggeneral.appenderRef = Console
rootLogger.appenderRef.console.ref = Console
logger.fileloggeneral.level = info
rootLogger.level = info
然后在jar插件的pom.xml中排除:
<build>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<excludes>
<exclude>log4j2-test.properties</exclude>
</excludes>
</configuration>
</plugin>
...
</build>
当然还有其他几种方法可以实现这一点。
使用 Eclipse 06-2021、Maven、log4j2。
我正在使用 log4j2 框架登录我的应用程序。我在 log4j2.properties 文件的资源文件夹中创建了配置。
我在那里定义了一些记录器及其级别:
...
logger.filelogconvert.appenderRef = FileLogConvert
logger.fileloggeneral.appenderRef = FileLogGeneral
rootLogger.appenderRef.console.ref = FileLogGeneral
logger.fileloggeneral.level = warn
rootLogger.level = warn
但是当我想部署应用程序时我需要重写这个文件,因为我需要将级别从 info
更改为 warn
或更改 appender/logger 引用。
使用 log4j2-test.properties 文件:https://logging.apache.org/log4j/2.x/manual/configuration.html#AutomaticConfiguration
...
logger.filelogconvert.appenderRef = Console
logger.fileloggeneral.appenderRef = Console
rootLogger.appenderRef.console.ref = Console
logger.fileloggeneral.level = info
rootLogger.level = info
然后在jar插件的pom.xml中排除:
<build>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<excludes>
<exclude>log4j2-test.properties</exclude>
</excludes>
</configuration>
</plugin>
...
</build>
当然还有其他几种方法可以实现这一点。