logback的xml文件,b站黑马程序员

简化Logback配置:快速上手日志滚动与输出
本文介绍如何快速配置Logback.xml以实现控制台和文件日志记录,包括滚动文件记录策略和自定义输出路径。适合初学者和开发者修改现有配置。

为了方便大家,logback.xml可以用,b站的黑马程序员`
自己改一下file和fileNamePattern的路径即可

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
	<target>System.out</target>
		<encoder>
		<!-- 日志输出格式:%d表示日期时间,%-5level:日志级别  ,%c取类 %thread表示线程名(在哪个方法执行),
			%msg:日志消息,%n是换行符 ,不会用就去百度一下logback的日志格式-->
					<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}[%-5level]  %c [%thread] :%msg%n</pattern>
			</encoder>
	</appender>

	<!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
	<appender name="FILE"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<encoder>
						<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}-%msg%n</pattern>
							<charset>utf-8</charset>
			</encoder>
		<!-- 日志输出路径 -->
		<file>D:/zhu/logback/itheima-data1.log</file>
		<!-- 指定日志文件拆分和压缩规则 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<!-- 通过指定压缩文件的名称,来确定分割文件方式 -->
			<fileNamePattern>D:/zhu/logback/itheima-data2-%d{yyyy-MMdd}.log%i.gz	</fileNamePattern>
			<!-- 文件拆分大小 -->
				<maxFileSize>1MB</maxFileSize>
		</rollingPolicy>
	</appender>


	<!-- level:用来设计打印级别,大小写无关:TRACE,DEBUG,INFO,WARN,ERROR,ALL和OFF,默认debug
	<root>可以包含零个或多个<appender-ref>元素,标识这个输出位置将会被本日志级别控制。
 -->
	<root level="ALL">
	<!-- 注意:如果这里不配置关联打印位置,该位置将不会记录日志 -->
		<appender-ref ref="CONSOLE" />
		<appender-ref ref="FILE" />
	</root>
</configuration>

### 黑马程序员 Logback.xml 配置文件示例 Logback 是一个流行的 Java 日志记录框架,提供了灵活的日志配置方式。通过 `logback.xml` 文件可以方便地管理日志输出的位置、格式以及级别。 #### 控制台输出 (ConsoleAppender) 为了将日志打印至控制台,可使用 `ch.qos.logback.core.ConsoleAppender` 组件: ```xml <configuration> <!-- 定义控制台输出 --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <!-- 设置根日志级别并指定使用的 appender --> <root level="debug"> <appender-ref ref="STDOUT"/> </root> </configuration> ``` 此段代码设置了基本的日志模式,包括时间戳、线程名称、日志等级、Logger 名称和消息正文[^1]。 #### 文件滚动输出 (RollingFileAppender) 对于生产环境而言,通常还需要保存日志到文件中,并支持按大小或日期分割大文件: ```xml <configuration> <!-- 定义每日滚动的文件输出 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>logs/app.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天生成一个新的日志文件 --> <fileNamePattern>logs/app-%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <!-- 单个文件最大尺寸为 10MB --> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern> </encoder> </appender> <root level="info"> <appender-ref ref="FILE"/> </root> </configuration> ``` 上述配置实现了基于时间和大小两种策略来创建新的日志文件,当达到设定条件时会自动归档旧的日志文件[^4]。 #### 结合 MyBatis 使用场景下的最佳实践 考虑到 MyBatis 的 SQL 执行情况往往也需要被监控,在实际项目开发过程中建议单独设置针对数据库操作的日志记录规则: ```xml <configuration> ... <!-- 对于 mybatis sql 输出特别处理 --> <logger name="org.mybatis.spring.MyBatisLoggingConfigurer" level="DEBUG"/> <!-- 或者更细粒度地只跟踪特定 mapper 接口 --> <logger name="com.example.mapper.UserMapper" level="TRACE"/> ... </configuration> ``` 这样不仅可以查看应用程序整体运行状况,还能深入分析具体的数据访问行为,有助于排查问题和性能优化[^5].
评论 12
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值