现在我log4j.properties在我的项目中配置 log4j,如下所示:
# Global logging configuration
log4j.rootLogger=WARN,rollingFile
# MyBatis logging configuration...
log4j.logger.org.mybatis.example.BlogMapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
# (rollingFile)
log4j.appender.rollingFile=org.apache.log4j.RollingFileAppender
log4j.appender.rollingFile.Threshold=WARN
log4j.appender.rollingFile.ImmediateFlush=true
log4j.appender.rollingFile.Append=true
log4j.appender.rollingFile.File=./application.log
log4j.appender.rollingFile.MaxFileSize=200MB
log4j.appender.rollingFile.MaxBackupIndex=5
log4j.appender.rollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.rollingFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n
但输出文件application.log没有内容。我很确定有 WARN 级别的日志输出。我在课堂上使用@Slf4j注释并在课堂上记录这样的错误:
log.warn("stream message。messageId={}, stream={}, body={}", messageId, message.getStream(), body);
我错过了什么吗?我应该怎么做才能将日志输出到application.log文件中?这是我的应用程序启动命令:
nohup ${JAVA_HOME}/bin/java -Xmx256M -Xms128M -jar \
-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=0.0.0.0:5019 \
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/apps/dolphin-post/ \
${APP_HOME}/${APP_NAME} >> ./cruise.log &
我尝试通过添加依赖项来使用 log4j2:
"log4j" : "org.apache.logging.log4j:log4j-core:2.14.1",
并像这样调整我的 log4j.properties 配置:
# Global logging configuration
log4j.rootCategory=ALL, rollingFile
# MyBatis logging configuration...
log4j.logger.org.mybatis.example.BlogMapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
# (rollingFile)
log4j.appender.rollingFile=org.apache.log4j.RollingFileAppender
log4j.appender.rollingFile.Threshold=WARN
log4j.appender.rollingFile.ImmediateFlush=true
log4j.appender.rollingFile.Append=true
log4j.appender.rollingFile.File=./application.log
log4j.appender.rollingFile.MaxFileSize=200MB
log4j.appender.rollingFile.MaxBackupIndex=5
log4j.appender.rollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.rollingFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n
application.log仍然没有输出。我也尝试排除 logback 包,但仍然无法正常工作:
configurations.all {
exclude group: "ch.qos.logback", module: "logback-classic"
}