我正在尝试从 Spring MVC 中的控制器登录,但没有出现任何内容。我正在使用带有 logback 的 SLF4J。我设法从一个主类登录,但在将其设为 Web 应用程序后它不会记录。
我认为它会起作用,因为 SL4JF 和 Logback 在类路径中。
@Controller
@RequestMapping(value = "/cars")
public class CarController {
private Logger logger = LoggerFactory.getLogger(CarController.class);
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public Map<String, String> newCar() {
logger.info("new car");
// more code
return map;
}
}
logback.xml
<configuration scan="true">
<property name="LOG_DIR" value="/My/User/Desktop"/>
<!--Loggers-->
<logger name="my.company" level="DEBUG"/>
<!--Root logger-->
<root level="debug">
<appender-ref ref="STDOUT"/>
<appender-ref ref="FILE_ROLLER"/>
</root>
<!--Appenders-->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="FILE_ROLLER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_DIR}/mylog.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>mylog.%d{yyyy-mm-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
</configuration>