美文网首页
log4j简单配置demo

log4j简单配置demo

作者: 全栈未遂工程师 | 来源:发表于2016-05-12 13:53 被阅读644次
    • 添加jar包:
      我添加了这个log4j-1.2.17.zip
    • 新建配置文件:
      路径:WebRoot/WEB-INF/log4j.properties
    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
    
    • 配置web.xml
    <!-- 设置由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
    

    相关文章

      网友评论

          本文标题:log4j简单配置demo

          本文链接:https://www.haomeiwen.com/subject/iocprttx.html