Spring中Log4j高级配置

Spring对Log4j支持的入口类是一个ServletContextListener。

Log4jConfigListener

Spring中Log4j高级配置


Log4jWebConfigurer

Spring中Log4j高级配置


Log4jWebConfigurer中有三个主要的属性,它们都是可以在web.xml中配置的:

1.Log4jConfigLocation:Log4j配置文件的位置

2.Log4jRefreshInterval:检测Log4j配置文件是否改变的时间间隔

3.Log4jExposeWebAppRoot:应用是否可以通过System.getProperties(“webAppRootKey”)得到当前应用名。

这三个属性具体是如何被Spring运用,还要进入initLogging()方法一探究竟。


Spring中Log4j高级配置

Spring中Log4j高级配置

Spring中Log4j高级配置

WebUtils就是将webAppRootKey属性和值设置到System.setProperty()


Spring中Log4j高级配置


配置文件位置和刷新频率都是通过传给Log4jConfigurer的initLogging()来实现的。