logback 设置按时间切割文件大小,并进行日志的控制台输出与打印
配合slf4j使用logback进行日志的切割输出保存
平时的日志输出启动时可能不太会显示具体错误。这个日志配置亲测,很好用
<configuration debug="false">
<!--定义日志文件的存储地址 ${catalina.home}为项目主目录下-->
<property name="LOG_HOME" value="${catalina.home}" />
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!--打印控制台数据为彩色-->
<!--<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!–格式化输出:%d表示日期,%thread表示线程名,%-5level:
级别从左显示5个字符宽度%msg:日志消息,%n是换行符–>
<pattern>===%d{yyyy-MM-dd HH:mm:SSS} %red([%thread]) %highlight(%-5level) %cyan(%logger{50})-
%msg%n</pattern>
</encoder>-->
<!--打印控制台为默认色-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L - %msg%n</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
<!-- 按照时间,大小生成日志文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/starFansGroup.log</file>
<!--SizeAndTimeBasedRollingPolicy滚动类按照大小和日期两个规则生成-->
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- daily rollover ,每小时钟生成一份日志文件-->
<fileNamePattern>
${LOG_HOME}/History.%d{yyyy-MM-dd,aux}/starFansGroup.%d{yyyy-MM-dd-HH}.%i.log</fileNamePattern>
<!--设置保存30天-->
<MaxHistory>30</MaxHistory>
<!--给定日志文件大小,超过指定的大小就新建一个日志文件-->
<maxFileSize>3MB</maxFileSize>
</rollingPolicy>
<encoder>
<!--[%thread]显示线程名字-->
<pattern>
===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger Line:%-3L - %msg%n Line:%-3L - %msg%n
</pattern>
</encoder>
</appender>
<!-- 日志输出级别 DEBUG--输出打印信息详细-->
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>