在这里插入代码片
<?xml version="1.0" encoding="UTF-8"?>
%date{yy-MM-dd HH:mm:ss} %-5level %logger{50} - %msg%n
/home/logs/${LOG_FILE_NAME}/${LOG_FILE_NAME}-%d{yyyy-MM-dd}.%i.log
10MB 30 20GB
%d{yy-MM-dd HH:mm:ss.SSS} %-5level %logger{50} - %msg%n
<!-- warn 级别:按照每天生成日志文件主要用于存储 kafka 服务崩溃后日志数据存储 -->
<appender name="FILEWARN" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件输出的文件名 -->
<FileNamePattern>/home/logs/${LOG_FILE_NAME}/topsec_warn.%d{yyyy-MM-dd}.log</FileNamePattern>
<!-- 日志文件保留天数 -->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!-- 格式化输出:% d 表示日期,% thread 表示线程名,%-5level:级别从左显示 5 个字符宽度 % msg:日志消息,% n 是换行符 -->
<pattern>%msg%n</pattern>
</encoder>
<!-- 追加方式记录日志 -->
<append>true</append>
<!-- 此日志文件只记录 warn 级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>warn</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="FILEWARN_ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="FILEWARN"/>
</appender>
<logger name="com.xdja.topsec.socket.server" level="INFO" additivity="true">
<appender-ref ref="FILEWARN_ASYNC"/>
</logger>
<!-- INFO 级别:按照每天生成日志文件 -->
<appender name="FILEINFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件输出的文件名 -->
<FileNamePattern>/home/logs/${LOG_FILE_NAME}/topsec_info.%d{yyyy-MM-dd}.log</FileNamePattern>
<!-- 日志文件保留天数 -->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!-- 格式化输出:% d 表示日期,% thread 表示线程名,%-5level:级别从左显示 5 个字符宽度 % msg:日志消息,% n 是换行符 -->
<pattern>%d{yy-MM-dd HH:mm:ss.SSS} %-5level %logger{50} - %msg%n</pattern>
</encoder>
<!-- 追加方式记录日志 -->
<append>true</append>
<!-- 此日志文件只记录 warn 级别的 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>info</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="FILEINFO_ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="FILEINFO"/>
</appender>
<logger name="com.xdja.topsec.socket.server" level="INFO" additivity="true">
<appender-ref ref="FILEWARN_ASYNC"/>
</logger>
<logger name="org.springframework" level="ERROR"/>
<logger name="com.xdja.topsec" level="INFO"/>
<logger name="org.jfaster.mango" level="ERROR"/>
<logger name="com.alibaba.druid" level="ERROR"/>
<logger name="org.quartz" level="ERROR"/>
<logger name="org.apache.http.wire" level="ERROR"/>
<logger name="org.apache.kafka" level="ERROR"/>
<logger name="com.xdja.kafka" level="ERROR"/>
<root level="ERROR">
<appender-ref ref="logfile"/>
<appender-ref ref="FILEINFO_ASYNC"/>
</root>