Чтобы включить логирование в Spring Security, необходимо настроить commons-logging и log4j (наверное, можно и без log4j, воспользовавшись другими возможностями commons-logging, но я сделал так). Для этого нужно (на примере проекта веб-приложения в NetBeans):
- Во-первых, подключить к проекту jar-ник commons-logging и log4j (в моему случае это были commons-logging-1.1.1.jar и log4j-1.2.17.jar).
- Добавить в проект properties-файл commons-logging.properties, поместив его в src/java, со следующим содержанием:
- Добавить в проект properties-файл настройки log4j. Я положил его в src/java, назвав log4j.properties. Содержимое файла следующее (для Debug-уровня логирования):
log4j.rootLogger=DEBUG, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern=%-4r [%t] %-5p %c %x - %m%nВ форматах паттернов особенно не разбирался, используется паттенн из мануала log4j (http://logging.apache.org/log4j/1.2/manual.html). В принципе, можно выполнить настройку отдельно для разных логгеров, используемых спрингом, заменив строку:log4j.rootLogger=DEBUG, console
на строкиlog4j.logger.org.springframework.web.context.support.StandardServletEnvironment=DEBUG, console
и др. для остальных логгеров. Какие именно логгеры использует спринг, станет понятно из лога log4j, который будет ругаться на ненастроенные для какого-либо логгера аппендеры:log4j:WARN No appenders could be found for logger (org.springframework.web.context.support.StandardServletEnvironment).
Но я это делать не стал.
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. - Добавить в web.xml приложения настройку пути к файлу конфигурации log4j и listener, инициализирующий log4j:
<context-param>
Всё, теперь логов будет хоть отбавляй =).
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
UPDATE:
Если валится исключение org.apache.commons.logging.LogConfigurationException, возможно, поможет это: http://barbitoff.blogspot.com/2012/07/orgapachecommonslogginglogconfiguration.html.
Комментариев нет:
Отправить комментарий