logback的简单使用

1、前言

查了很多资料,都说logback的性能都要比log4j的性能要好,logback逐渐要取代log4j。今天对logback作一个简单的整理。

2、logback的依赖坐标

<!--
	<dependency>
		<groupId>org.slf4j</groupId>
		<artifactId>slf4j-api</artifactId>
		<version>1.6.4</version>
	</dependency>
	<dependency>
		<groupId>ch.qos.logback</groupId>
		<artifactId>logback-core</artifactId>
		<version>1.0.6</version>
	</dependency>
-->

<!-- 该依赖包括了上面两个依赖,所以只要引入该依赖即可 -->
<dependency>
	<groupId>ch.qos.logback</groupId>
	<artifactId>logback-classic</artifactId>
	<version>1.0.6</version>
</dependency>

3、配置文件: logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration
    xmlns="http://ch.qos.logback/xml/ns/logback"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://ch.qos.logback/xml/ns/logback https://raw.githubusercontent.com/enricopulatzo/logback-XSD/master/src/main/xsd/logback.xsd">
	<property name="LOG_HOME" value="tp/log"/>
	<!-- 输出到控制台 -->
	<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender" >
		<!-- 输出的格式 -->
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}:  %msg%n</pattern>
		</encoder>
	</appender>
	
	<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!-- 配置滚动的策略 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<!-- 日志名称的格式 -->
			<fileNamePattern>${LOG_HOME}/logback.log.%d{yyyy-MM-dd}</fileNamePattern>
			<!-- 保存的最长时间:天数 -->
			<MaxHistory>1</MaxHistory>
		</rollingPolicy>
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50}:  %msg%n</pattern>
		</encoder>
	</appender>
	
	<!--
	注意:
	level属性也可以直接写在logger上,如:
	<logger name="ws.log.logback.LogbackTest" additivity="false" level="INFO">
		<appender-ref ref="STDOUT" />
	</logger>
	-->
	<logger name="ws.log.logback.LogbackTest" additivity="false">
		<level value="INFO" />
		<appender-ref ref="STDOUT" />
	</logger>
	
	<!-- 相当于logger元素,只是name值已经确定为root了 -->
	<root level="warn">
		<appender-ref ref="STDOUT" />
	</root>
</configuration>

4、代码实例

//注意导入的包都是slf4j的包
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class LogbackTest {
	
	private static final Logger LOGGER = LoggerFactory.getLogger(LogbackTest.class);
	
	public static void main(String[] args) {
		LOGGER.trace("logback的--trace日志--输出了");
		LOGGER.debug("logback的--debug日志--输出了");
		LOGGER.info("logback的--info日志--输出了");
		LOGGER.warn("logback的--warn日志--输出了");
		LOGGER.error("logback的--error日志--输出了");
	}

}

5、效果展示

这里写图片描述

按照logger指定的输出级别输出,会覆盖root指定的级别。

6、参考资料

技术博客:http://www.cnblogs.com/warking/p/5710303.html 【该技术博客中的loger就是指logger】
官网:https://logback.qos.ch/manual/configuration.html
译文:https://www.oschina.net/translate/logging-in-java-switching-to-logback

7、其他-错误日志【致留言笔友】
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智_永无止境

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值