博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
@Logback简介
阅读量:6877 次
发布时间:2019-06-26

本文共 2296 字,大约阅读时间需要 7 分钟。

  Ceki Gülcü在Java日志领域世界知名。他创造了Log4J,这个最早的Java日志框架即便在JRE内置日志功能的竞争下仍然非常流行。随后他又着手实现SLF4J这个"简单的日志前端接口(Facade)"来替代Jakarta Commons-Logging。

要在工程里面使用logback需要以下jar文件:

maven依赖

ch.qos.logback
logback-classic
1.1.7
ch.qos.logback
logback-access
1.1.7

不需要再写logback-core和slf4j的依赖,因为logback-classic依赖这两个jar包。

注:

logback.xml(放在src/main/resource底下),不然找不到,即放在classpath最外层

这样是找不到的,会使用默认配置

这样就可以了,要在classpath最外层

1.logback首先会试着查找logback.groovy文件;
2.当没有找到时,继续试着查找logback-test.xml文件;
3.当没有找到时,继续试着查找logback.xml文件;
4.如果仍然没有找到,则使用默认配置(打印到控制台)。
创建LogbackDemo.java用于测试,代码如   

public class LogbackDemo {    private static Logger logger = LoggerFactory.getLogger(LogbackDemo.class);    public static void main(String[] args) {        /**         * 生产环境只能打印info,warn,error级别的日志,         * 不能打印trace,debug级别的日志         */        logger.trace("<--trace-->");        logger.debug("<--debug-->");        logger.info("<--info-->");        logger.warn("<--warn-->");        logger.error("<--error-->");        String name = "winner_0715";        //打印变量,注意,{}绝不能省        logger.info("Hello,{}!", name);        String message = "logback";        //禁止用String的"+"来输出字符串        //所以这一种不推荐        logger.info("Hello," + name + ",欢迎使用" + message);        //推荐使用的方式        logger.info("Hello,{},欢迎使用{}", name, message);        String[] fruits = {"apple", "banana"};        // 可以传入一个数组,结果为"Fruit:  apple,banana"        logger.info("Fruit:{},{}", fruits);    }}

执行结果:

16:51:29.336 [main] DEBUG com.winner.log.LogbackDemo - <--debug-->16:51:29.339 [main] INFO com.winner.log.LogbackDemo - <--info-->16:51:29.339 [main] WARN com.winner.log.LogbackDemo - <--warn-->16:51:29.339 [main] ERROR com.winner.log.LogbackDemo - <--error-->16:51:29.339 [main] INFO com.winner.log.LogbackDemo - Hello,winner_0715!16:51:29.340 [main] INFO com.winner.log.LogbackDemo - Hello,winner_0715,欢迎使用logback16:51:29.340 [main] INFO com.winner.log.LogbackDemo - Hello,winner_0715,欢迎使用logback16:51:29.340 [main] INFO com.winner.log.LogbackDemo - Fruit:apple,banana

由此可见,日志是遵守一定格式的,但是我们并没有写配置文件,所以使用的是默认配置。

默认格式:时间(精确到毫秒)+ 线程名称 + log级别 + 类名 + log信息

从代码里可能只看得出来使用了slf4j,其实是使用了logback的jar包的

仅仅使用slf4j的jar包无法完成日志功能。

 

转载地址:http://nwgfl.baihongyu.com/

你可能感兴趣的文章
tengine 的优化
查看>>
C++编译器与链接器工作原理
查看>>
软件缺陷分析-软件测试之犯罪心理学
查看>>
Python实战之自己主动化评论
查看>>
spring boot下使用logback或log4j生成符合Logstash标准的JSON格式
查看>>
iOS面试题合集(77道)
查看>>
hadoop安装及配置入门篇
查看>>
[原] KVM 虚拟化原理探究(2)— QEMU启动过程
查看>>
使用Java程序调用MatLab
查看>>
什么是C++虚函数、虚函数的作用和使用方法
查看>>
Atitit.cto 与技术总监的区别
查看>>
关于【自证清白】
查看>>
手把手教你crontab排障
查看>>
订单编号
查看>>
纪念我曾经的 JAVA 姿势--转
查看>>
js 如何清除setinterval
查看>>
我为NET狂官方面试题-数据库篇答案
查看>>
玩转iOS开发:iOS开发中的装逼技术 - RunTime(一)
查看>>
CSS实现水平垂直居中的1010种方式(史上最全)
查看>>
BCH曼谷矿工会议的积极方面:社区彼此更加了解
查看>>