日志框架发展史
张三 老程序员 jdk1.3 System.out.println("")追踪 ; 异常 try catch{ System.out.println("") } 输出一些关键变量 System.out.println("") 上线,部署了大量的System.out.println("") 。 异常 ---> 张三 服务确认异常信息, 非常郁闷? 追踪
信息 ,记录在文本, 去服务器追踪就不会查无对症,
1. logUtil loginfo 替换 . 就可以顺利追踪到了。 不会立马反馈 , 而且随着项目运营越来越多用户请求量越来越大, 1天 1G, 2G
2. 日志信息 按天迭代, 2020-10-01.log ,... 按物理大小跌打 2020-10-01-20M.log
3. 用户出现异常loginfo(错误信息,等级) ,能不能给我马上发送邮件?
4. 能不能记录日志的时候按等级来区分 追踪1 信息2 调试3 异常 4 , 1天400\500M 5.i/o 异步 ... 自由控制格式
开源 log4j . 受到广大开发者欢迎。 log4j simple log4j nop....。 apatch基金会收纳
后来jdk官方自己开发出来了一个日志框架 jul java.util.logging 此时,市面上的日志框架非常的混乱, 一个项目 一个模块 log4j , 一个模块 jul , 一个jboss-logging ;jdk开发了一个日志门面,用于整合日志,jakarta Commons Logging JCL ( 不实现日志功能,整合日志的),依赖ClassLoader去找日志的实现。spring默认用的JCL
张三 发现并不好用, 张三离开了apatch, 独自开发日志门面 slf4j . ( 不实现日志功能,整合日志的)拥有 适配器、桥接器。可以通过适配器将JCL或者jul转换到slf4j,达到统一。通过桥接器实现某个具体的日志框架;apatch log4j2 性能 log4j高出好多倍, 张三开发出了 logback 性能 log4j高出好多倍
SpringBoot中默认的日志框架 logback日志的集成
底层也是使用的slf4j+logback的方式进行日志记录的,把其他的日志都通过适配器转换成了slf4j