今天想试用一下这个东西,发现
@RequestMapping("/error")
public String error(){
try{
int a=7/0;
}catch(Exception e){
logger.debug ( "++++++++++++++++++++++++++++++++++++++++ ") ;
logger.info ( "_________________________________________" ) ;
logger.warn ( "*******************************************") ;
logger.error ( "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%") ;
}
return "";
}
上面的logger.都没有输出在文件中,其中log4j.properties的属性如下
log4j.rootLogger =debug,stdout,D,E
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = D://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =D://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
或者说我怎么能够只让他输出我想要的例如
logger.error("错误");
就是只在error.log中输出 错误 二字就好了
使用systom.out.println();
你有log4j对象么
log4j.appender.stdout =org.apache.log4j.FileAppender或者
log4j.appender.stdout =org.apache.log4j.DailyRollingFileAppender
log4j.appender.stdout =org.apache.log4j.FileAppender或者
log4j.appender.stdout =org.apache.log4j.DailyRollingFileAppender
建议用log4net,感觉比这个好用
单纯这样看看貌似是没有什么问题的,问一句:配置文件启动项目时配置文件加载了没?
你控制台有没有打印完4条信息,error.log,debug.log文件都有吗
是不是项目启动时没有加载log4j配置文件
你是springboot项目?
你在项目中指定日志的输出了吗?
譬如:
logging.config=classpath:logback_log.xml
logging.level.root=INFO
logging.level.com.credithc.deduction.dao.DeductionMapper=DEBUG
logging.level.com.alibaba.dubbo.monitor=WARN
这样的?
告诉项目你是log4j的日志系统。。。