多平台统一管理软件接口,如何实现多平台统一管理软件接口
287
2023-01-26
浅谈Java slf4j日志简单理解
一、理解
slf4j(Simple Logging Facade for java),表示为java提供的简单日志门面,更底层一点说就是接口。通过将程序中的信息导入到日志系统并记录,实现程序和日志系统的解耦
日志门面接口本身通常并没有实际的日志输出能力,它底层还是需要去调用具体的日志框架API的,也就是实际上它需要跟具体的日志框架结合使用。由于具体日志框架比较多,而且互相也大都不兼容,日志门面接口要想实现与任意日志框架结合可能需要对应的桥接器,就好像JDBC与各种不同的数据库之间的结合需要对应的JDBC驱动一样。
1. 日志门面(Facade)
1.slf4j(推荐)
2.commons-logging
2. slf4j连接具体的日志
slf4j和其它日志框架连接的时候,中间需要一个桥接器。有的日志框架本身就使用了slf4j的api,则不需要使用桥接器.
1.slf4j-api.jar > slf4j-log4j12.jar桥接器 > log4j.jar
2.slf4j-api.jar > logback-core.jar,logback-classic.jar
3.slf4j-api.jar > slf4j-simple.jar
4.slf4j-api.jar > log4j-slf4j-impl-2.8.2.jar > org.apache.logging.log4j:log4j-api:2.8.2,org.apache.logging.log4j:log4j-core:2.8.2,org.apache.logging.log4j:log4j-web:2.8.2 (推荐使用 log4j2)
二、使用 slf4j+log4j2
log4j2.xml
放在resources目录下
filePattern="${log.path}/error-%d{yyyy-MM-dd_HH-mm}.log">
filePattern="${log.path}/error-%d{yyyy-MM-dd_HH-mm}.log">
filePattern="${LOG_HOME}/$${date:yyyy-MM}/${FILE_NAME}-%d{MM-dd-yyyy}-%i.log.gz">
filePattern="${LOG_HOME}/$${date:yyyy-MM}/${FILE_NAME}-%d{MM-dd-yyyy}-%i.log.gz">
LogTest.java
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class LogTest {
public final Logger logger=LoggerFactory.getLogger(getClass());
public static void main(String[] args) {
log.trace("trace");
log.debug("debug");
log.warn("warn");
log.info("info");
log.error("error");
}
}
参考文章:https://jb51.net/article/143486.htm
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~