请在下面找到log4j.xml和控制器类。我在log4j.xml中添加了行将日志级别从错误更改为调试。但是在添加这些行之后会看到没有效果。
我需要这个设置来调试“HTTP 400:客户端发送的请求在语法上是不正确的。” 有人可以帮我吗?感谢。
的log4j.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="Appender1" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-7p %d [%t] %c %x - %m%n"/>
</layout>
</appender>
<appender name="Appender2" class="org.apache.log4j.FileAppender">
<param name="File" value="./Logs/SpringMVC2.log" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-7p %d [%t] %c %x - %m%n"/>
</layout>
</appender>
<!-- no effect of these lines -->
<!-- <logger name="org.springframework.web" additivity="false"> -->
<logger name="org.springframework" additivity="false">
<priority value ="DEBUG" />
<level value="DEBUG"/>
<appender-ref ref="CONSOLE"/>
</logger>
<root>
<priority value ="DEBUG" />
<level value="DEBUG"/>
<appender-ref ref="CONSOLE"/>
</root>
<!-- /no effect of these lines -->
</log4j:configuration>
控制器类
@EnableWebMvc
@Controller
@RequestMapping(value="/home")
public class HomeController {
private Logger logger= Logger.getLogger(HomeController.class);
@RequestMapping(method=RequestMethod.GET)
public String home() {
logger.info("sample info log");
logger.debug("sample debug log");
logger.trace("sample trace log");
logger.error("sample error log");
return "home";
}
}
答案 0 :(得分:0)
您定义名称为<appender name="Appender1" class="org.apache.log4j.ConsoleAppender">
的appender,但您不能使用它。
而不是使用<appender-ref ref="CONSOLE"/>
使用您定义的那个:
<logger name="org.springframework" additivity="false">
<priority value ="DEBUG" />
<level value="DEBUG"/>
<appender-ref ref="Appender1"/>
</logger>