生成的日志目录是日期yyyy-MM-dd 该目录下是日志文件,日志文件以小时分割,每个小时一个日志文件,求大神指导,怎么实现啊。。
UTF-8
<!-- ${LOG_HOME}/${bySecond}/log.log -->
${LOG_HOME}/认证请求/%d{yyyy-MM-dd}/%d{HH}.%i.log
10MB
15GB
<MaxHistory>30</MaxHistory>
<cleanHistoryOnStart>true</cleanHistoryOnStart>
</rollingPolicy>
<encoder>
<pattern>[%-5level] %d{HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>DENY</onMatch>
<onMismatch>ACCEPT</onMismatch>
</filter>
</appender>
现在的代码是这样的,没隔目录下只有一个日志文件,时间变了之后没有生成新的日志文件。
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 分割成多个文件记录 -->
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 输出文件,是从项目根目录开始找你定义的log文件夹,然后.log的日志文件是自动生成的 -->
<File>log/ComsumeDataForUltraEsb.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 规定100mb,日志文件超过这个大小把文件重新命名成ComsumeDataForUltraEsb-%d{yyyy-MM-dd}.%i.log,%d是当前时间,%i是同时间下的第一个文件 -->
<fileNamePattern>log/ComsumeDataForUltraEsb-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxFileSize>100MB</maxFileSize>
<maxHistory>30</maxHistory>
</rollingPolicy>
<!-- 设置编码和输出格式 -->
<encoder>
<Pattern>%d{HH:mm:ss.SSS} - %msg %n</Pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<!-- 注意上面定义的appender一定要使用到, level中info是输出级别,appender-ref 是指引到上面自己定义的appender,值是id -->
<root level="INFO">
<appender-ref ref="ROLLING" />
</root>
</configuration>
写错了,appender-ref 是指引到上面自己定义的appender,值是name