springboot logger 的配置


 
 

 

1.dev(开发环境)中logger配置详解

  <!-- 文件输出格式 -->
	<property name="PATTERN" value="%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%thread] %c [%L] -| %msg%n" />
	<springProfile name="dev">
	<!-- 配置控制台输出 -->
		<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
		<!-- 控制台输出输出的格式 -->
			<encoder>
				<pattern>${PATTERN}</pattern>
			</encoder>
		</appender>
		<!-- 在哪儿些包下,日志输出的级别 -->
		<logger name="xxx.xxxx.xxx" level="debug"/>

		<root level="info">
		<!-- 启动name为“CONSOLE”的日志级别,默认可以配置多个 -->
			<appender-ref ref="CONSOLE" />
		</root>
	</springProfile>

 

2.test(测试环境下)的配置文件

<property name="TEST_FILE_PATH" value="e:/test/logs/" />
<springProfile name="test">
		<!-- 每天产生一个文件 -->
		<appender name="TEST-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
			<!-- 日志文件的全路径 -->
			<file>${TEST_FILE_PATH}/spring_info.log</file>
			<!-- 日志文件的记录格式 -->
			<encoder>
				<pattern>%d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
			</encoder>
			
			<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
				<!-- 文件名称 -->
				<fileNamePattern>${TEST_FILE_PATH}/logFile.%d{yyyy-MM-dd_HH-mm}.log</fileNamePattern>
				<!-- 文件最大保存历史数量 -->
				<MaxHistory>100</MaxHistory>
			</rollingPolicy>
			
			<layout class="ch.qos.logback.classic.PatternLayout">
				<pattern>${PATTERN}</pattern>
			</layout>
		</appender>
		
		<!-- 打印控制台 -->
		<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
			<encoder>
				<pattern>${PATTERN}</pattern>
			</encoder>
		</appender>
		
		<logger name="xxx.xxx.xxx" level="debug"/>
		
		<root level="info">
			<!-- 启动name为“CONSOLE”和“TEST-FILE”日志级别,默认可以配置多个 -->
			<appender-ref ref="TEST-FILE" />
			<appender-ref ref="CONSOLE" />
		</root>
	</springProfile>

3.全部的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

	<!-- 文件输出格式 -->
	<property name="PATTERN" value="%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%thread] %c [%L] -| %msg%n" />
	<!-- test文件路径 -->
	<property name="TEST_FILE_PATH" value="e:/test/logs/" />
	<!-- pro文件路径 -->
	<property name="PRO_FILE_PATH" value="/opt/abc/logs" />

	<!-- 开发环境 -->
	<springProfile name="dev">
		<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
			<encoder>
				<pattern>${PATTERN}</pattern>
			</encoder>
		</appender>
		
		<logger name="xxx.xxx.xxx" level="debug"/>

		<root level="info">
			<appender-ref ref="CONSOLE" />
		</root>
	</springProfile>

	<!-- 测试环境 -->
	<springProfile name="test">
		<!-- 每天产生一个文件 -->
		<appender name="TEST-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
			<!-- 文件路径 -->
			<file>${TEST_FILE_PATH}/spring_info.log</file>
			<encoder>
				<pattern>%d{yyyy-MM-dd HH:mm:ss} %-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
			</encoder>
			
			<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
				<!-- 文件名称 -->
				<fileNamePattern>${TEST_FILE_PATH}/logFile.%d{yyyy-MM-dd_HH-mm}.log</fileNamePattern>
				<!-- 文件最大保存历史数量 -->
				<MaxHistory>100</MaxHistory>
			</rollingPolicy>
			
			<layout class="ch.qos.logback.classic.PatternLayout">
				<pattern>${PATTERN}</pattern>
			</layout>
		</appender>
		
		<!-- 打印控制台 -->
		<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
			<encoder>
				<pattern>${PATTERN}</pattern>
			</encoder>
		</appender>
		
		<logger name="xxx.xxx.xxx" level="debug"/>
		
		<root level="info">
			<appender-ref ref="TEST-FILE" />
			<appender-ref ref="CONSOLE" />
		</root>
	</springProfile>

	<!-- 生产环境 -->
	<springProfile name="prod">
		<appender name="PROD_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
			<file>${PRO_FILE_PATH}</file>
			<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
				<fileNamePattern>${PRO_FILE_PATH}/warn.%d{yyyy-MM-dd}.log</fileNamePattern>
				<MaxHistory>100</MaxHistory>
			</rollingPolicy>
			<layout class="ch.qos.logback.classic.PatternLayout">
				<pattern>${PATTERN}</pattern>
			</layout>
		</appender>
		
		<root level="warn">
			<appender-ref ref="PROD_FILE" />
		</root>
	</springProfile>
</configuration>

加maven依赖

其中配置文件中有几个类
输出到控制台
ch.qos.logback.core.ConsoleAppender
输出到文件
ch.qos.logback.core.rolling.RollingFileAppender
用于重命名日志文件名
ch.qos.logback.core.rolling.TimeBasedRollingPolicy

以上都是属于logback-core.jar中的类
从继承关系上看
在这里插入图片描述
添加web的依赖即可

<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-web</artifactId>
</dependency>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM