日志输出问题

来源:4-3 logback配置的验证

慕容2015448

2020-01-08 11:20:34

我的debug怎么没有输出,确实调试过了,而且日志文件里面也是空的,什么都没有

http://img.mukewang.com/climg/5e154a030966fd4e11970269.jpg

http://img.mukewang.com/climg/5e154a1b092a03a707260183.jpg

配置文件如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
   <!-- 定义参数常量 -->
   <!-- TRACE<DEBUG<INFO<WARN<ERROR -->
   <!-- logger.trace("msg") logger.debug... -->
   <property name="log.level" value="debug" />
   <property name="log.maxHistory" value="30" />
   <property name="log.filePath" value="${catalina.base}/logs/webapps" />
   <property name="log.pattern"
             value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n" />
   <!-- 控制台设置 -->
   <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
       <encoder>
           <pattern>${log.pattern}</pattern>
       </encoder>
   </appender>
   <!-- DEBUG -->
   <appender name="debugAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <!-- 文件路径 -->
       <file>${log.filePath}/debug.log</file>
       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
           <!-- 文件名称 -->
           <fileNamePattern>${log.filePath}/debug/debug.%d{yyyy-MM-dd}.log.gz
           </fileNamePattern>
           <!-- 文件最大保存历史数量 -->
           <maxHistory>${log.maxHistory}</maxHistory>
       </rollingPolicy>
       <encoder>
           <pattern>${log.pattern}</pattern>
       </encoder>
       <filter class="ch.qos.logback.classic.filter.LevelFilter">
           <level>DEBUG</level>
           <onMatch>ACCEPT</onMatch>
           <onMismatch>DENY</onMismatch>
       </filter>
   </appender>
   <!-- INFO -->
   <appender name="infoAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <!-- 文件路径 -->
       <file>${log.filePath}/info.log</file>
       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
           <!-- 文件名称 -->
           <fileNamePattern>${log.filePath}/info/info.%d{yyyy-MM-dd}.log.gz
           </fileNamePattern>
           <!-- 文件最大保存历史数量 -->
           <maxHistory>${log.maxHistory}</maxHistory>
       </rollingPolicy>
       <encoder>
           <pattern>${log.pattern}</pattern>
       </encoder>
       <filter class="ch.qos.logback.classic.filter.LevelFilter">
           <level>INFO</level>
           <onMatch>ACCEPT</onMatch>
           <onMismatch>DENY</onMismatch>
       </filter>
   </appender>
   <!-- ERROR -->
   <appender name="errorAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <!-- 文件路径 -->
       <file>${log.filePath}/erorr.log</file>
       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
           <!-- 文件名称 -->
           <fileNamePattern>${log.filePath}/error/error.%d{yyyy-MM-dd}.log.gz
           </fileNamePattern>
           <!-- 文件最大保存历史数量 -->
           <maxHistory>${log.maxHistory}</maxHistory>
       </rollingPolicy>
       <encoder>
           <pattern>${log.pattern}</pattern>
       </encoder>
       <filter class="ch.qos.logback.classic.filter.LevelFilter">
           <level>ERROR</level>
           <onMatch>ACCEPT</onMatch>
           <onMismatch>DENY</onMismatch>
       </filter>
   </appender>
   <logger name="com.imooc.o2o" level="${log.level}" additivity="true">
       <appender-ref ref="debugAppender"/>
       <appender-ref ref="infoAppender"/>
       <appender-ref ref="errorAppender"/>
   </logger>
   <root level="info">
       <appender-ref ref="consoleAppender"/>
   </root>
</configuration>


测试类:

package com.imooc.o4o.web.superadmin;

import com.imooc.o4o.entity.Area;
import com.imooc.o4o.service.AreaService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* Created by Administrator on 2020/1/7 0007.
*/
@Controller
@RequestMapping("/superadmin")
public class AreaController {
   Logger logger = LoggerFactory.getLogger(AreaController.class);
   @Autowired
   private AreaService areaService;

   @RequestMapping(value = "/listarea", method = RequestMethod.GET)
   @ResponseBody
   private Map<String, Object> listArea() {
       logger.info("start------");
       long startTime = System.currentTimeMillis();
       Map<String, Object> modelMap = new HashMap<String, Object>();
       List<Area> list = new ArrayList<Area>();
       try {
           list = areaService.getAreaList();
           modelMap.put("rows", list);
           modelMap.put("total", list.size());
       } catch (Exception e) {
           e.printStackTrace();
           modelMap.put("success", false);
           modelMap.put("errM", e.toString());
       }
       logger.error("test error");
       long endTime = System.currentTimeMillis();
       logger.debug("costTime:[{}ms]",endTime-startTime);
       logger.info("end-------");


       return modelMap;
   }
}

写回答

1回答

好帮手慕柯南

2020-01-08

同学你好!

老师在本地测试你的代码是没有问题的,可能是项目没有编译好的原因。

建议你重新将项目:

如果使用的是idea

编译生成的target文件删除,重新启动项目测试一下

http://img.mukewang.com/climg/5e15709a095171a402930096.jpg

如果是eclipse

http://img.mukewang.com/climg/5e15714c09c5206f02400258.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~



0

0 学习 · 8263 问题

查看课程