У меня есть веб-приложение, созданное с помощью Eclipse / STS и Spring MVC.
Я использую slf4j и log4j для ведения журнала.
Вот мой файл log4j.properties ... Я знаю, что он используется, потому что я добавил текст «MY TEST PROPS FILE» к дате шаблон, и он появляется в журналах ...
# Root logger option
log4j.rootLogger=DEBUG, INFO, WARN, ERROR, stdout, file
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=MY TEST PROPS FILE - %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
Когда я запускаю свое веб-приложение, вывод консоли выглядит следующим образом ... вы можете увидеть "MY TEST PROPS FILE" на выходе .. .
MY TEST PROPS FILE - 2020-05-29 17:18:36 DEBUG BasicResourcePool:422 - decremented pending_acquires: 0
MY TEST PROPS FILE - 2020-05-29 17:18:36 DEBUG BasicResourcePool:1644 - trace com.mchange.v2.resourcepool.BasicResourcePool@468f3122 [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@642b4cb2)
MY TEST PROPS FILE - 2020-05-29 17:18:36 DEBUG NewProxyConnection:1260 - com.mchange.v2.c3p0.impl.NewProxyConnection@71cf92cb: close() called more than once.
MY TEST PROPS FILE - 2020-05-29 17:18:36 DEBUG BasicResourcePool:1644 - trace com.mchange.v2.resourcepool.BasicResourcePool@468f3122 [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@642b4cb2)
MY TEST PROPS FILE - 2020-05-29 17:18:36 DEBUG BasicResourcePool:1644 - trace com.mchange.v2.resourcepool.BasicResourcePool@468f3122 [managed: 3, unused: 2, excluded: 0] (e.g. com.mchange.v2.c3p0.impl.NewPooledConnection@642b4cb2)
Моя проблема в том, что журнал, который я пытаюсь выполнить из своего кода, не отображается в выводе консоли.
Я делаю это ...
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/* ... */
private static Logger logger = LoggerFactory.getLogger(WebController.class);
/* ... */
@RequestMapping(value={"", "/", "showhome"}, method={RequestMethod.POST,RequestMethod.GET})
public ModelAndView showHome(Model model) {
logger.info("########### TEST LOG INFO");
logger.error("########### TEST LOG ERROR");
logger.warn("########### TEST LOG WARN");
logger.debug("########### TEST LOG DEBUG");
/* ... */
}
Мне, должно быть, не хватает чего-то простого. Почему мои вызовы регистратора тестов не отображаются в выводе консоли?
ОБНОВЛЕНИЕ - РЕШЕНИЕ НАЙДЕНО: Я нашел решение и опубликовал его как ответ ниже.