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