您的位置:首页 > 其它

Log4j日志文件常用配置

2013-02-15 22:19 411 查看

1日志级别热修改

web.xml

===============================================================================

<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>

<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>5000</param-value>
</context-param>

===============================================================================



Spring的Log4jConfiglistener类会调用Log4j的PropertyConfigurator.configureAndWatch(),将刷新间隔作为参数传入。



public
static void
initLogging(String location,
long refreshInterval)
throws
FileNotFoundException {
String resolvedLocation =SystemPropertyUtils.resolvePlaceholders(location);
File file = ResourceUtils.getFile(resolvedLocation);
if (!file.exists()) {
throw
new
FileNotFoundException("Log4j config file [" +resolvedLocation +
"] not found");
}
if(resolvedLocation.toLowerCase().endsWith(XML_FILE_EXTENSION)) {
DOMConfigurator.configureAndWatch(file.getAbsolutePath(),refreshInterval);
}
else {
PropertyConfigurator.configureAndWatch(file.getAbsolutePath(),refreshInterval);
}
}





2日志文件编码格式

<appender name="FILEOUT" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="${vc.log.path}/cdai_ssh.log" />
<param name="Encoding" value="UTF-8" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[CDAI_SSH]%d{yyy-MM-dd HH:mm:ss}%-5p%m%n"
/>
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="DEBUG" />
</filter>
</appender>



3日志文件保留时间

通过下面配置,可以限制DailyRollingFileAppender保留的文件个数。



<param name="MaxBackupIndex"value="10"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: