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"/>