java之日志框架

java日志框架其实分两块内容:

一是日志框架

比如JDK的j.u.l(java.util.logging),apache的log4j ,logback以及log4j2 等,这类日志框架主要作用是配置日志输出到控制台,文件,发布到哪。

二是日志门面

日志门面其实就是java程序和日志框架的中间层。阿里巴巴开发规范中提到,禁止直接使用日志框架的api来直接记录日志。因为不同日志框架提供了不同的api,如果直接耦合了某个框架的api到代码中,后续对于日志框架的更改将出现问题。所以这里要求使用日志门面。通过门面就可以将代码和具体的实现解耦。

关于日志的个人见解

  1. 推荐使用lombok,当需要打日志时直接在类头使用注解@Slf4j,它会自动注入一个变量log,可以通过此变量直接记录日志。

  2. 如果是单体服务,务必要配置日志文件的分割。之前有个和我说他们日志上线之后非常大,我就很奇怪,细问才知道他们不配置策略,全都输出到一个文件中。这绝对是不可取的。

  3. 如果是分布式架构,一定要做日志收集,推荐做全链路追踪。这样才能在分布式的环境下像单体服务一样查询日志,并且追踪上下文。不然分布式会用的极其难受。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章