zoukankan      html  css  js  c++  java
  • 彻底搞懂混而不乱的Java日志体系

    1 混而不乱的Java日志体系

    1.1 Java日志发展史

    在这里插入图片描述

    1999年Ceki推出log4j日志框架,并捐给Apache。Ceki也加入Apache组织。据说Apache基金会还曾经建议Sun引入Log4j到Java的标准库中,但Sun拒绝了。
    2002年Java1.4发布,Sun推出了自己的日志库JUL(Java Util Logging),其实现基本模仿了Log4j的实现。在JUL出来以前,Log4j就已经成为一项成熟的技术,使得Log4j在选择上占据了一定的优势;
    2003年Apache推出了JCL(Jakarta Commons Logging)。JCL只是定义了一套日志接口(其内部也提供一个Simple Log的简单实现),支持运行时动态加载日志组件的实现,也就是说,在你应用代码里,只需调用Commons Logging的接口,底层实现可以是Log4j,也可以是Java Util Logging;
    2006年,Ceki离开了Apache,回瑞典创建了QOS公司,然后先后创建了Slf4j(日志门面接口,类似于Commons Logging)和Logback(Slf4j的实现)两个项目;
    2012年,Apache眼看有被Logback反超的势头,于2012-07重写了Log4j 1.x,成立了新的项目Log4j 2,2014年7月其GA版本(正式发布版)发布。

    1.2 JUL

    Sun公司在 jdk1.4版本增加了一个日志包java.util.logging,简称为jul,用以对抗log4j。

    • JUL控制台输出使用System.err 进行日志输出

    在这里插入图片描述

    1.3 log4j

    log4j最后一次更新时间是2012年。apache已不在维护,建议使用log4j2

    2 统一日志输出

    2.1 Slf4j适配器

    在这里插入图片描述

    图片来自官网:http://www.slf4j.org/manual.html

    2.2 Slf4j桥接器

    在这里插入图片描述

    图片来自官网文档:http://www.slf4j.org/legacy.html

      • jcl-over-slf4j.jar

        简化从 JCL 到 SLF4J 的迁移

      • log4j-over-slf4j

        简化从log4j 到 SLF4J 的迁移

      • jul-over-slf4j.jar
        简化从 JUL 到 SLF4J 的迁移

  • 相关阅读:
    jquery摘要
    一步一步学Linq to sql系列文章
    公布一些常用的WebServices
    ASP.NET AJAX入门系列(8):自定义异常处理
    jquery制作图片幻灯片插件
    ASP.NET AJAX入门系列(2):使用ScriptManager控件
    ClientScript.GetCallbackEventReference几个参数的使用实例
    jquery中this的使用说明
    程序员的最后归宿究竟是什么?
    英语26个字母的日语读法
  • 原文地址:https://www.cnblogs.com/aishangJava/p/15512046.html
Copyright © 2011-2022 走看看