Slf4j 门面
Slf4j 是什么
为什么阿里巴巴禁止工程师直接使用日志系统(Log4j、Logback)中的 API_Hollis Chuang的博客
Slf4j类似于java项目和日志间的中间件,每种日志系统都有不同的api集,Slf4j会把各种日志系统的api集转化为Slf4j的api集,这样一个项目如果更改日志系统就不需要修改代码中的日志api集,Slf4j会帮助项目进行适配。
Slf4j 用法
日志?聊一聊slf4j吧 - 掘金 (juejin.cn)
日志组件slf4j介绍及配置详解_楚兴的博客-CSDN博客_slf4j配置文件
<!--日志依赖,slf4j为日志门面(接口),logback为具体日志实现类-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
Slf4j 简化api调用
需要手动调用api时要调用如下代码
Logger logger = LoggerFactory.getLogger(当前类名.class);
但使用@Slf4j 就可以省掉这行代码。
@Slf4j是啥,它是干啥的_张张张阿君啊的博客-CSDN博客_@sl4j
MDC
MDC是什么鬼?用法、源码一锅端 - 掘金 (juejin.cn)
2222.04.15 目前认识
Logback可以实现基本日志输出格式,但更多的复杂的输出格式要使用MDC来实现。
比如Json格式可用
<encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
搭配MDC实现json相对复杂输出,示例见LogBack文章Json部分链接。
LogStash
暂时没需求,先把教程贴在这
Logstash:Logstash 入门教程 (一)_Elastic 中国社区官方博客的博客