log4j简单配置demo

2016-05-12  本文已影响644人  全栈未遂工程师
log4j.rootCategory=debug, stdout , R0
 
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %-20d{yyyy-MM-dd HH\:mm\:ss}[%-5p](%c) (%F\:%L) - %m%n
 
log4j.appender.R0=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R0.layout=org.apache.log4j.PatternLayout
log4j.appender.R0.layout.ConversionPattern=%-20d{yyyy-MM-dd HH\:mm\:ss}[%-5p](%c) (%F\:%L) - %m%n
log4j.appender.R0.DatePattern='.'yyyy-MM-dd
log4j.appender.R0.File=logs/jsDataRoadApp.log
<!-- 设置由Sprng载入的Log4j配置文件位置 -->
<context-param> 
    <param-name>log4jConfigLocation</param-name> 
    <param-value>WEB-INF/log4j.properties</param-value> 
</context-param> 
<!-- Spring刷新Log4j配置文件变动的间隔,单位为毫秒 -->
<context-param> 
    <param-name>log4jRefreshInterval</param-name> 
    <param-value>60000</param-value> 
</context-param> 
<listener> 
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 
</listener>
public String test(){
    log.debug("test begin:");
    try{
        this.message="hello world";
        log.info(message);
        int res = 4/0;
    }catch(Exception e){
        log.error(e);
    }
    log.debug("test end.");
    return SUCCESS;
}

后来,要求改了,不仅要显示error错误,而且要把所有的操作过程保存,便于在出现扯皮的时候排查。所以,在上面配置基础上又增加了一个输出文件,每隔100M输出一个info级别的日志文件。最多保存999999个。
下面是具体配置:

log4j.rootCategory=info, stdout , R0 ,R1  #总级别
 
log4j.appender.stdout.Threshold = ERROR #只打印error级别
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %-20d{yyyy-MM-dd HH\:mm\:ss}[%-5p] (%F\:%L) - %m%n
 
log4j.appender.R0.Threshold = ERROR
log4j.appender.R0=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R0.layout=org.apache.log4j.PatternLayout
log4j.appender.R0.layout.ConversionPattern=%-20d{yyyy-MM-dd HH\:mm\:ss}[%-5p](%c) (%F\:%L) - %m%n
log4j.appender.R0.DatePattern='.'yyyy-MM-dd
log4j.appender.R0.File=logs/jsDataRoadAppError.log
 
log4j.appender.R1.Threshold = INFO #只打印info级别
log4j.appender.R1=org.apache.log4j.RollingFileAppender
log4j.appender.R1.layout=org.apache.log4j.PatternLayout
log4j.appender.R1.layout.ConversionPattern=%-20d{yyyy-MM-dd HH\:mm\:ss}[%-5p](%c) (%F\:%L) - %m%n
log4j.appender.R1.MaxFileSize=10KB   #一个文件最大10kb
log4j.appender.R1.MaxBackupIndex=999999  #最多个文件
log4j.appender.R1.File=logs/jsDataRoadAppInfo.log

如果具体想排查一个包下面的某个功能那么这么配置:

log4j.logger.com.hdsx=info, R1
上一篇下一篇

猜你喜欢

热点阅读