zoukankan      html  css  js  c++  java
  • slf4j重定向日志输出

    参考资料:
    SLF4J与Logback、Log4j1、Log4j2、JCL、J.U.L是如何关联使用的
    https://blog.csdn.net/yangzl2008/article/details/81503579
     
    slf4j、jcl、jul、log4j1、log4j2、logback大总结
    https://my.oschina.net/pingpangkuangmo/blog/410224
     
    SLF4J与Logback、Log4j1、Log4j2、JCL、J.U.L是如何关联使用的
    https://blog.csdn.net/yangzl2008/article/details/81503579
     
    日志API工具有
    • java.util.logging(jdk1.4以后才有日志实现类)
    • Apache log4j
    • logback
    • commons-logging
    • slf4j-api
     
    SLF4j是一个桥梁作用,其他的是具体日志工具
    通过slf4j将项目中多种不同的日志框架  重定向到 slf4j中,再由slf4j 重定向到 指定的日志框架中。
     
    如下:jdk java.util.logging  ==》 重定向 SLF4j  ===》 slf4j-log4j12-version.jar  =====》 log4j.jar ===》输出日志
     
    不同的日志重定向到SFL4j的方式
    java.util.logging(jdk1.4以后才有日志实现类):jul-to-slf4.jar
    apache commons-logging:    jcl-over-slf4j.jar
    apache log4j1:    log4j-over-slf4j.jar
    apache Log4j2:    log4j-to-slf4j.jar

    SLF4j重定向到具体的日志中

     slf4j-jdk14:    slf4j到jdk-logging的桥梁
     slf4j-log4j12:    slf4j到log4j1的桥梁
     log4j-slf4j-impl:    slf4j到log4j2的桥梁
     logback-classic:    slf4j到logback的桥梁
     slf4j-jcl:    slf4j到commons-logging的桥梁

    当Log4j 1通过slf4j,重定向到logback 输出日志

    1、添加依赖
     log4j-over-slf4j(实现log4j1切换到slf4j)
     slf4j-api
     logback-classic
    
    2、添加logback的配置文件

    Log4j2通过slf4j,重定向到logback 输出日志

    1、添加依赖
    log4j-to-slf4j.jar(log4j2切换到slf4j)
    slf4j-api
    logback-classic
    
    
    2、添加logback的配置文件

    jdk logging通过slf4j,重定向到logback 输出日志

    1、添加依赖
    jul-to-slf4j (实现jdk-logging切换到slf4j)
    slf4j-api
    logback-classic
    
    2、添加logback的配置文件
    3、在代码中加入如下代码
    
    static{
        SLF4JBridgeHandler.install();
    }
    Handler是jdk-logging处理日志过程中的一个处理器
    SLF4JBridgeHandler实现了这个Handler,替代了默认处理器

    commons-logging切换到logback

    1、添加依赖
    jcl-over-slf4j(实现commons-logging切换到slf4j)
    slf4j-api
    logback-classic
    
    2、添加logback的配置文件

    jdk logging和 commons-logging都在项目中时, 统一切换到 logback

    1、添加前两个的转换器依赖
    jul-to-slf4j (实现jdk-logging切换到slf4j)
    jcl-over-slf4j(实现commons-logging切换到slf4j)
    
    添加到logback依赖
    slf4j-api
    logback-classic
    
    2、添加logback的配置文件
    
    3、在代码中加入如下代码
    static{
        SLF4JBridgeHandler.install();
    }
    作者:海绵般汲取
    出处:https://www.cnblogs.com/gne-hwz/
    版权:本文版权归作者和博客园共有
    转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
  • 相关阅读:
    洛谷P1339 [USACO09OCT]热浪Heat Wave 题解
    洛谷P2692 覆盖 题解
    ELK logstash geoip值为空故障排查
    Linux_LVM_磁盘扩容
    通过zabbix的API接口获取服务器列表
    linux下安装部署ansible
    nginx 错误502 upstream sent too big header while reading response header from upstream
    docker报Error response from daemon: client is newer than server (client API version: 1.24, server API version: 1.19)
    Python学习之MySQLdb模块
    Nginx模块 ngx_http_limit_req_module 限制请求速率
  • 原文地址:https://www.cnblogs.com/gne-hwz/p/15381382.html
Copyright © 2011-2022 走看看