• Log4j不同等级输入不同文件(转)


    主要是利用Threshold.

    Threshold的语法

    log4j.threshold=level

    level就是前面所说的 OFF ,FATAL ,ERROR ,WARN ,INFO ,DEBUG ,ALL。Threshold是个全局的过滤器,它将把低于所设置的level的信息过滤不显示出来。
    看一个例子:

    log4j.rootLogger=DEBUG, CON
    log4j.appender.CON=org.apache.log4j.ConsoleAppender
    log4j.appender.CON.layout=org.apache.log4j.PatternLayout
    log4j.appender.CON.layout.ConversionPattern=[%t] %-5p %c - %m%n
    #Only print log statement of level WARN or above regardless of the(只打印warn级别以上的信息)
    #logger.
    log4j.threshold=WARN

    Threshold的用法很灵活,还可以在appender中增加threshold

    log4j.rootLogger=DEBUG, C
    log4j.appender.C=org.apache.log4j.ConsoleAppender
    # Set the appender threshold to INFO
    log4j.appender.C.Threshold=INFO
    log4j.appender.C.layout=org.apache.log4j.PatternLayout
    log4j.appender.C.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

    这里初始设置 level为DEBUG ,但log4j.appender.C.Threshold=INFO 设置为INFO。因为 INFO>DEBUG 所以如果含有DEBUG级别的信息,将被过滤。

    1. log4j.rootLogger=debug, stdout, R  
    2.   
    3.   
    4. log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
    5. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
    6. log4j.appender.stdout.layout.ConversionPattern=[%d] [%4p] %l %m%n  
    7.   
    8. log4j.appender.R=org.apache.log4j.RollingFileAppender  
    9. log4j.appender.R.Encoding=GBK  
    10. log4j.appender.R.Threshold=info  
    11. log4j.appender.R.File=cohl_elearning.log  
    12. #..//oil//applications//cohlElearning//cohlElearning//  
    13. log4j.appender.R.MaxFileSize= 2048KB  
    14. log4j.appender.R.MaxBackupIndex=20  
    15. log4j.appender.R.layout=org.apache.log4j.PatternLayout  
    16. log4j.appender.R.layout.ConversionPattern=[%d] [%t] [%4p] %l %m%n    

    1. public class TestJava {  
    2.   
    3.     static Logger logger = Logger.getLogger(TestJava.class);  
    4.     /** 
    5.      * @param args 
    6.      */  
    7.     public static void main(String[] args) {  
    8.     loggerTest();  
    9.     }      
    10. public static void loggerTest() {  
    11.         logger.info("logger info");  
    12.         logger.debug("logger debug");  
    13.         logger.error("logger error");  
    14.           
    15.     }  
    16. }  
  • 相关阅读:
    模型命名规范
    Jquery 将表单序列化为Json对象
    Failed to read auto-increment value from storage engine错误的处理方法
    css样式表中设置table的第一列的宽度是固定值
    thinkphp中I("parm")用法的注意事项
    获取凌晨00:00:00的时间
    php empty()和isset()的区别
    react续集
    react的笔记整理
    vuex
  • 原文地址:https://www.cnblogs.com/lxzh/p/2525873.html
Copyright © 2020-2023  润新知