java - 将 Log4j 1.2.17 迁移到 2.12.1
问题描述
所以我刚刚将 log4j 1.2.17 更新为 log4j 2.12.1 并更改了我的 pom.xml 中的依赖项:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
<version>2.12.1</version>
</dependency>
但我不知道我的 log4j2.properties 文件是否正确配置(注意:我使用不同的 log4j2.properties 文件):
从
log4j.rootLogger=DEBUG, Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{dd.MM.yyyy HH:mm:ss,SSS} [%t] %-5p %c{1} - %m%n
log4j.logger.com.Project.commons.gui.config=WARN
log4j.logger.com.Project.commons.gui.module=WARN
至
status=ERROR
rootLogger.level=DEBUG
appenders=console
appender.console.type=Console
appender.console.name=STDOUT
appender.console.target=SYSTEM_OUT
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d{dd.MM.yyyy HH:mm:ss,SSS} [%t] %-5p %c{1} - %m%n
rootLogger.appenderRef.console.ref = console
logger.config.name=com.Project.commons.gui.config
logger.config.level=WARN
logger.module.name=com.Project.commons.gui.module
logger.module.level=WARN
并从
log4j.rootLogger=%%logging_level%%, DefaultAppender, ErrorAppender, ConsoleAppender
log4j.appender.ConsoleAppender=org.apache.log4j.ConsoleAppender
log4j.appender.DefaultAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ErrorAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ConsoleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleAppender.layout.ConversionPattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
# DefaultAppender uses PatternLayout.
log4j.appender.DefaultAppender.File=C://TEMP/c-client.log
log4j.appender.DefaultAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.DefaultAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.DefaultAppender.layout.ConversionPattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
# ErrorAppender uses PatternLayout.
log4j.appender.ErrorAppender.File=C://TEMP/c-client_error.log
log4j.appender.ErrorAppender.DatePattern='.'yyyy-MM-dd
log4j.appender.ErrorAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.ErrorAppender.layout.ConversionPattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
log4j.appender.ErrorAppender.threshold=ERROR
log4j.logger.com.Project.db=WARN
log4j.logger.com.Project.util=WARN
log4j.logger.com.mchange=WARN
log4j.logger.org.springframework=WARN
log4j.logger.com.Project.c.commons.util=WARN
log4j.logger.org.apache.cxf=WARN
log4j.logger.org.mortbay=WARN
log4j.logger.com.Project.commons.gui.config.FileRegistryImpl=INFO
log4j.logger.com.Project.co.gui.configuration.GuiScanner=INFO
至
status=ERROR
rootLogger.level=%%logging_level%%
appenders= default, error, console
appender.console.type=Console
appender.console.name=STDOUT
appender.console.target=SYSTEM_OUT
appender.default.type=RollingFile
appender.default.name=RollingFile
appender.error.type=RollingFile
appender.error.name=RollingFile
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
# DefaultAppender uses PatternLayout.
appender.default.fileName=C://TEMP/c-client.log
appender.default.datePattern='.'yyyy-MM-dd
appender.default.layout.type=PatternLayout
appender.default.layout.pattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
# ErrorAppender uses PatternLayout.
appender.error.fileName=C://TEMP/c-client_error.log
appender.error.datePattern='.'yyyy-MM-dd
appender.error.layout.type=PatternLayout
appender.error.layout.pattern=%d{yyyy.MM.dd HH:mm:ss,SSS} %-5p [%t] %c [%X{request} %X{command}] - %m%n
appender.error.filter.threshold.type=ThresholdFilter
appender.error.filter.threshold.level=ERROR
rootLogger.appenderRef.console.ref = console
logger.db,name=com.Project.db
logger.db.level=WARN
logger.util.name=com.Project.util
logger.util.level=WARN
logger.mchange.name=com.mchange
logger.mchange.level=WARN
logger.springframework.name=org.springframework
logger.springframework.level=WARN
logger.util.name=com.Project.c.commons.util
logger.util.level=WARN
logger.cxf.name=org.apache.cxf
logger.cxf.level=WARN
logger.mortbay.name=org.mortbay
logger.mortbay.level=WARN
logger.FileRegistryImpl.name=com.Project.commons.gui.config.FileRegistryImpl
logger.FileRegistryImpl.level=INFO
logger.GuiScanner.name=com.Project.c.gui.configuration.GuiScanner
logger.GuiScanner.level=INFO
当我运行我的项目的 server.bat 文件时,我收到以下错误消息:
ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2
我希望有人能帮帮忙。
解决方案
推荐阅读
- qt - Qml 恢复最小化窗口
- c# - 如何多次打开带有 logfil 的程序?(C#)
- python - 在python中解压缩每个文件夹和子文件夹中的所有.bz2文件
- c# - 是否可以分配列表
到 EditorGUILayout.TextField()? - php - 如何在jquery中选择多个复选框时只显示一次消息或数据?
- ios - 从 iOS 应用程序控制低电量模式
- angular - 加载树后如何扩展节点?
- unit-testing - AndroidStudio 3.2 测试配置不起作用
- php - 如何在函数中使用 putfile 对存储库进行单元测试
- sql - 在访问中运行更新查询的问题