zoukankan      html  css  js  c++  java
  • 简单的使用SLF4J门面和log4j

    SLF4J代表Simple Logging Facade for Java。它提供了Java中所有日志框架的简单抽象。因此,它使用户能够使用单个依赖项处理任何日志框架,例如:Log4j,Logback和JUL(java.util.logging)。可以在运行时/部署时迁移到所需的日志记录框架。

    每个绑定用于其各自的日志框架。下表列出了SLF4J绑定及其相应的框架。

    编号Jar文件日志框架
    1 slf4j-nop-x.x.jar 无操作,丢弃所有记录。
    2 slf4j-simple-x.x.jar 简单的实现,打印信息和更高的消息,并将所有输出保留到System.err
    3 slf4j-jcl-x.x.jar Jakarta Commons Logging框架。
    4 slf4j-jdk14-x.x.jar Java.util.logging框架(JUL)。
    5 slf4j-log4j12-x.x.jar Log4J框架工作,需要有log4j.jar。

    要使SLF4J与slf4l-api-x.x.jar一起工作,需要在项目的类路径中添加所需记录器框架的相应Jar文件(绑定)(设置构建路径)。

    要从一个框架切换到另一个框架,需要替换相应的绑定。如果未找到边界,则默认为无操作模式。


    一个例子:
    依赖的库:
     

     src目录下建立 log4j.properties

     ### u8BBEu7F6E###
    log4j.rootLogger = debug,stdout,D,E
    
    ### u8F93u51FAu4FE1u606Fu5230u63A7u5236u62AC ###
    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
    
    ### u8F93u51FADEBUG u7EA7u522Bu4EE5u4E0Au7684u65E5u5FD7u5230=E://logs/error.log ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = E://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
    
    ### u8F93u51FAERROR u7EA7u522Bu4EE5u4E0Au7684u65E5u5FD7u5230=E://logs/error.log ###
    log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.E.File =E://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

    测试代码:

    //测试日志
        public static void testSlf4j() {
            Logger logger = LoggerFactory.getLogger(Test.class);
            logger.debug("132");
            logger.info("456");
        }
    这里如果src目录下没有建立 log4j.properties ,会有警告提示
    log4j:WARN No appenders could be found for logger (com.netease.qa.testng.TestngRetry).
    log4j:WARN Please initialize the log4j system properly.
     
     
     
     
     
     
     
    参考 ; https://www.yiibai.com/slf4j/slf4j_overview.html
     
    https://www.cnblogs.com/longronglang/p/6211162.html
     
     
     
  • 相关阅读:
    微人事项目-mybatis-持久层
    通过外键连接多个表
    springioc
    Redis 消息中间件 ServiceStack.Redis 轻量级
    深度数据对接 链接服务器 数据传输
    sqlserver 抓取所有执行语句 SQL语句分析 死锁 抓取
    sqlserver 索引优化 CPU占用过高 执行分析 服务器检查
    sql server 远程备份 bak 删除
    冒泡排序
    多线程 异步 beginInvoke EndInvoke 使用
  • 原文地址:https://www.cnblogs.com/fps2tao/p/12799447.html
Copyright © 2011-2022 走看看