【求助】我这log4j该怎么配置?


log4j.rootLogger=DEBUG,console,debugFile

log4j.logger.com.jbit.accp.action=DEBUG
log4j.logger.com.jbit.accp.dao=ERROR
log4j.logger.com.jbit.accp.service=ERROR
log4j.logger.org.springframework=ERROR
log4j.logger.org.mybatis=ERROR
log4j.logger.org.apache.ibatis.logging=ERROR

Console

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout.ConversionPattern=[SSM]-[%p]-[%C:%L]: [%m]%n
log4j.appender.console.Target=System.out
log4j.appender.console.Encoding=gbk
log4j.appender.console.layout=org.apache.log4j.PatternLayout

debugFile

log4j.appender.debugFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debugFile.File=${catalina.home}/logs/ssm_log/debug.log
log4j.appender.debugFile.DatePattern=yyyy-MM-dd'.log'
log4j.appender.debugFile.Encoding=GBK
log4j.appender.debugFile.Threshold=ERROR
log4j.appender.debugFile.DatePattern='.'yyyy-MM-dd
log4j.appender.debugFile.layout=org.apache.log4j.PatternLayout

我将控制台输出等级设置为debug 然后将spring mybatis等都设置为error
现在有两个问题
1,我将控制台设置为debug不应该是输出所有大于等于debug等级的日志么?
为啥控制台只输出debug信息呢?

2,我将debugFile设置为error级别,那它不应该将所有error级别的信息记录在文件里面么?为什么什么都没有记录呢?

spring-mvc java mybatis log4j spring

轻抚菊花笑不语 10 years, 2 months ago

1.指定一下:log4j.appender.console.Threshold=DEBUG 试一下
2.
log4j.appender.debugFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debugFile.File=d:\test.log
log4j.appender.debugFile.Threshold=ERROR
log4j.appender.debugFile.Append=true
log4j.appender.debugFile.DatePattern='.'yyyy-MM-dd
log4j.appender.debugFile.layout=org.apache.log4j.PatternLayout
log4j.appender.debugFile.layout.ConversionPattern=%d{yyyyMMdd-HH:mm:ss} %t %c %m%n

3.在Java中log.error("错误日志");//看有没有写入日志文件

绿坝娘的祝福 answered 10 years, 2 months ago

Your Answer