日志文件有被创建,但是文件里面没有写入日志,是什么原因呢?
来源:2-2 开发用户流量拦截器-2
王小east
2022-12-28 00:15:08
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<!-- //追加器,向控制台书写日志-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<!-- //输出日志的格式-->
<encoder>
<pattern>[%thread] %d %level %logger{10} - %msg%n</pattern>
</encoder>
</appender>
<!-- //生成按天滚动的日志文件-->
<appender name="accessHistoryLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- //滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- //日志文件保存位置-->
<fileNamePattern>/Users/wangxiaodong/Desktop/ImoocProject/resuful/histoory.%d.log</fileNamePattern>
<!-- //输出日志的格式-->
<encoder>
<pattern>[%thread] %d %level %logger{10} - %msg%n</pattern>
</encoder>
</rollingPolicy>
</appender>
<!-- //当前日志中,最低级别允许输出debug-->
<root level="debug">
<appender-ref ref="console"/>
</root>
<logger name="com.imooc.restful.interceptor.AccessHistoryInteceptor"
level="INFO" additivity="false">
<appender-ref ref="accessHistoryLog"/>
</logger>
</configuration>package com.imooc.restful.interceptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.servlet.HandlerInterceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AccessHistoryInteceptor implements HandlerInterceptor {
//创建日志对象
private Logger logger = LoggerFactory.getLogger(AccessHistoryInteceptor.class);
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
StringBuilder log = new StringBuilder();
log.append(request.getRemoteAddr());//获取远程用户IP地址
log.append("|");
log.append(request.getRequestURL());//获取用户访问的URL地址
log.append("|");
log.append(request.getHeader("user-agent"));//获取用户客户端环境
logger.info(log.toString());//对日志进行输出
return true;
}
}<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <mvc:exclude-mapping path="/resources/**"/> <bean class="com.imooc.restful.interceptor.AccessHistoryInteceptor"/> </mvc:interceptor> </mvc:interceptors>

1回答
好帮手慕小尤
2022-12-28
同学你好,因闭合rollingPolicy标签书写错位置,从而导致无法将日志信息写入到日志文件中。建议同学进行调整,如下所示:

祝学习愉快!
相似问题