Log4j ver.を使うまでの時間 春のアプリケーションで 1。このようなものを使用して、log4j.properties 構成ファイルが存在する場所を定義しました。
PropertyConfigurator.configure(Foo.class.getResourceAsStream("log4j.properties"));
今、私はLog4j版に切り替えました。2 と私は XML で構成を持っています:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/' >
<appenders>
<appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender">
<param name="url" value="jdbc:postgresql://hostname/db"/>
<param name="driver" value="org.postgresql.Driver"/>
<param name="user" value="postgres"/>
<param name="password" value="pwd"/>
<param name="sql" value="INSERT INTO logs (logger, log_level, message) VALUES('%l','%p','%m')"/>
<layout class="org.apache.log4j.PatternLayout"></layout>
</appender>
<appender name="CA" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" />
</layout>
</appender>
</appenders>
<loggers>
<root level="trace">
<appender-ref ref="CA" level="debug"/>
<appender-ref ref="DB" level="info"/>
</root>
</loggers>
</log4j:configuration>
しかし、Spring はこのファイルを使用していないようで、ロギングはコンソールまたはデータベースに追加されません。
public class Foo {
Logger LOG = LogManager.getLogger(Foo.class);
public void init() {
System.out.println("START...");
LOG.info("INFO");
LOG.debug("DEBUG");
System.out.println("END...");
}
}
そして、これは出力です:
run:
VI 30, 2013 9:36:16 ODP. org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@2548ccb8: startup date [Sun Jun 30 21:36:16 CEST 2013]; root of context hierarchy
VI 30, 2013 9:36:16 ODP. org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [foo/applicationContext.xml]
VI 30, 2013 9:36:16 ODP. org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@21e9c99c: defining beans [taskMaker]; root of factory hierarchy
START...
END...
BUILD SUCCESSFUL (total time: 1 second)
私は何を間違っていますか?