java项目中加入logging

java项目中加入logging功能

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

<contextName>mpb-dsb</contextName>
<!-- 定义日志的根目录 -->
<property name="log.base" value="/opt/app/aait/aait-logs"/>

<!-- 定义日志文件名称 -->
<property name="log.name" value="aait-log" />

<!--引入默认的一些设置-->
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<!--web信息-->
<logger name="org.springframework.web" level="info"/>

<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
	<!-- encoder 可以指定字符集,对于中文输出有意义 -->
	<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"
		charset="UTF-8">
		<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [
			%logger{200} : %line ] - %msg%n</pattern>
	</encoder>
</appender>

<!-- 滚动记录文件,每天生成一个日志文件,保存20天的日志文件 -->
<appender name="rollingFile"
	class="ch.qos.logback.core.rolling.RollingFileAppender">
	<!-- 指定日志文件的名称 -->
	<file>${log.base}/${log.name}.log</file>
	<!-- 下面这段注释的代码可以在日志文件超过 5MB 时进行归档,并且归档文件后缀只要是 .zip 或 .gz 就会自动压缩日志归档 -->
	<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
		<fileNamePattern>${log.base}/${log.name}-%d{yyyy-MM-dd}-%i.log
		</fileNamePattern> <!-- .log/.zip -->
		<maxHistory>30</maxHistory>
		<!-- 当日志文件超过maxFileSize指定的大小是,根据上面提到的%i进行日志文件滚动 注意此处配置 SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy -->
		<timeBasedFileNamingAndTriggeringPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
			<maxFileSize>20MB</maxFileSize>
		</timeBasedFileNamingAndTriggeringPolicy>
	</rollingPolicy>

	<!-- 日志输出格式:%d表示日期时间,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{200} 表示logger名字最长200个字符,否则按照句点分割。 
		%msg:日志消息,%n是换行符 -->
	<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"
		charset="UTF-8">
		<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [
			%logger{200} : %line ] - %msg%n</pattern>
	</encoder>
</appender>

<!-- 滚动记录文件(错误日志),每天生成一个日志文件,保存20天的日志文件 -->
<appender name="rollingFile-error"
	class="ch.qos.logback.core.rolling.RollingFileAppender">
	<!-- 指定日志文件的名称 -->
	<file>${log.base}/${log.name}-error.log</file>

	<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
		<fileNamePattern>${log.base}/${log.name}-error-%d{yyyy-MM-dd}-%i.log
		</fileNamePattern> <!-- .log/.zip -->
		<maxHistory>5</maxHistory>
		<!-- 当日志文件超过maxFileSize指定的大小是,根据上面提到的%i进行日志文件滚动 注意此处配置 SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy -->
		<timeBasedFileNamingAndTriggeringPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
			<maxFileSize>5MB</maxFileSize>
		</timeBasedFileNamingAndTriggeringPolicy>
	</rollingPolicy>

	<!-- 日志输出格式:%d表示日期时间,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{200} 表示logger名字最长200个字符,否则按照句点分割。 
		%msg:日志消息,%n是换行符 -->
	<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"
		charset="UTF-8">
		<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [
			%logger{200} : %line ] - %msg%n</pattern>
	</encoder>

	<filter class="ch.qos.logback.classic.filter.LevelFilter">
		<level>ERROR</level><!-- 只打印错误日志 -->
		<onMatch>ACCEPT</onMatch>
		<onMismatch>DENY</onMismatch>
	</filter>
</appender>

<root level="INFO">
	<appender-ref ref="console" />
	<appender-ref ref="rollingFile" />
	<appender-ref ref="rollingFile-error" />
</root>

<!--这里指定logger name 是为jmx设置日志级别做铺垫 -->
<logger name="com.dowsure" additivity="true" level="INFO" />
<logger name="org.springframework" additivity="true" level="INFO" />
<logger name="org.apache.ibatis" additivity="true" level="INFO" />
<logger name="org.mybatis" additivity="true" level="DEBUG" />
<logger name="java.sql" additivity="true" level="INFO" />

<springProfile name="dev,test,test2">
    <logger name="com.dowsure.ccb.application.mappers" level="DEBUG" />
    <logger name="com.dowsure.ccb.application.mappers" level="DEBUG" />
    <!-- 设定打印日志级别 -->
    <property name="log.level" value="DEBUG" />
</springProfile>
<springProfile name="prod">
    <logger name="com.dowsure.ccb.application.mappers" level="DEBUG" />
    <logger name="com.dowsure.ccb.application.mappers" level="DEBUG" />
    <!-- 设定打印日志级别 -->
    <property name="log.level" value="INFO" />
</springProfile>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值