logbak 日志配置

logbak.xml文件的配置

模式一(推荐): 每天生成一个文件, 且每天生成的文件名称相同(方便查看正在进行中的日志, 名字是固定的, 直接将查看命令写在脚本中就行了.), 到了第二天则自动将前一天的日志文件重命名为日期后缀.

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
	<contextName>logback</contextName>
	<!--输出到控制台 -->
	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
		<encoder>
			<pattern>%d{HH:mm:ss} [%thread] %line %-5level %logger{36} - %msg%n </pattern>
		</encoder>
	</appender>
    <!-- 每天生成一个文件, 第二天自动重命名前一天的日志 -->
	<!-- 不同日志策略appender的class属性不相同 -->
	<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
		
		<!-- 每天生成的日志文件名称 -->
		<File>/opt/www/app/study_app/logs/app.log</File>

        <!-- 不同日志策略rollingPolicy的class属性不相同 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

			<!-- 重命名前一天日志文件名的格式 -->
			<FileNamePattern>/opt/www/app/study_app/logs/app_%d{yyyy-MM-dd}.log </FileNamePattern>
            <!-- 最多保留多少天的日志 -->
			<maxHistory>100</maxHistory>
		</rollingPolicy>
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>%d{HH:mm:ss.SSS} [%thread] %line %-5level %logger{50} - %msg%n</pattern>
		</encoder>

		<!-- 设置该appender仅记录info级别的日志 -->
		<!--<filter class="ch.qos.logback.classic.filter.LevelFilter">-->
			<!--<level>info</level>-->
			<!--<onMatch>ACCEPT</onMatch>-->
			<!--<onMismatch>DENY</onMismatch>-->
		<!--</filter>-->
	</appender>

	<root level="info">
		<appender-ref ref="console" />
		<appender-ref ref="logFile" />
	</root>
</configuration>

 

模式二:

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
	<contextName>logback</contextName>
	<!--输出到控制台 -->
	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
		<encoder>
			<pattern>%d{HH:mm:ss} [%thread] %line %-5level %logger{36} - %msg%n </pattern>
		</encoder>
	</appender>

    <!-- 按照文件大小生成日志 -->
	<!-- 不同日志策略appender的class属性不相同 -->
	<appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
    
        <!-- 不同日志策略rollingPolicy的class属性不相同 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<FileNamePattern>/opt/www/app/study_app/logs/app_%d{yyyy-MM-dd}.%i.log </FileNamePattern>
            <!-- 每个文件大小 -->
			<maxFileSize>200MB</maxFileSize>
			<maxHistory>100</maxHistory>
		</rollingPolicy>
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>%d{HH:mm:ss.SSS} [%thread] %line %-5level %logger{50} - %msg%n</pattern>
		</encoder>
	</appender>

	<root level="info">
		<appender-ref ref="console" />
		<appender-ref ref="logFile" />
	</root>
</configuration>

.日志输出关键字:

行号:  %line
某个包下面的日志不打印(springboot项目中o.s.k. 等为简写, 需要找到实际的包名): 

<logger name="org.springframework.kafka" level="OFF"/>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章