读书人

Catalina.out文件超大有关问题

发布时间: 2012-08-24 10:00:21 作者: rapoo

Catalina.out文件超大问题

对于在log4j输出log时,有的内容要想写到文件和控制台,
而有的内容只想写到文件中,而不在控制台打印出来。

可以用代码进行动态控制,改变logger中的consoleappender。

/**
* 使控制台log无效。
*/
public void DisableConsoleLog(Logger logger) {
// 删除现存
Enumeration<?> em = logger.getAllAppenders();
while (em.hasMoreElements()) {
Object element = em.nextElement();
if (element instanceof ConsoleAppender) {
logger.removeAppender((ConsoleAppender) element);
}
}
}

/**
* 使控制台log有效。
*/
public void EnableConsoleLog(Logger logger) {
DisableConsoleLog(logger);
final String LOG_LAYOUT_PATTERN = "%m%n";
// 输出Layout设定
PatternLayout layout = new PatternLayout(LOG_LAYOUT_PATTERN);
// 控制台输出设定
ConsoleAppender consoleAppender = new ConsoleAppender(layout,
ConsoleAppender.SYSTEM_OUT);
logger.addAppender(consoleAppender);
}


本文转自原创作品 http://kin111.blog.51cto.com/738881/149867

读书人网 >软件架构设计

热点推荐