『互联网架构』软件架构-java日志体系(17)
了解过为什么日志体系那么多的jar包,系统放几天日志就把线上磁盘给打爆了。具体怎么配置使用log,有的配置是Info是一个日志,error是一个日志,查找非常的烦,如果线上不出问题,我们很少管,如果出问题了,找不到对应的日志真是烦透了。如果是分布式开发,日志管理如果不使用elk这种统一工具,分散在不同的机器上,有10台机器需要去10台机器轮流找日志,是不是很麻烦,今天就一次性的吧整个日志体系搞明白。 JAVA当中有哪些日志打印的组件 名称 描述 log4j logback log4j2 java.util.logging 假设Spring 框架要打印日志,应该选择中其中哪一个组件? 发现哪个都不能选,只能基于应用实际使用的日志组件来。不然就会日志打印会多份。怎么找到应用实际使用的日志组件 Apache Commons Loging 解决了这个问题 Apache Commons Loging (JCL) Commons Loging 本身只提供日志接口,具体实现在运行时动态寻找对应组件?比如:log4j、jdk14looger 等。但这种动态绑定的方式当系统特别宠大的时候会出现绑定失败的问题。现在比较流行的slf4j 基于静态绑定的方式解决了这个问题? slf4j sl4j 本身也只提供日志接口,与commons loging 不同的是其采用在classPath