0
我有一些遺留的代碼,其中有很多e.printStackTrace()
,由於顯而易見的原因,這些代碼沒有打印在log4j文件中。最新的代碼確實有log.error("Exception occured in class::method",e);
。有沒有一種標準的方式在log4j中記錄那些傳統的e.printStackTrace()
?記錄傳統的e.printStractTrace()到log4j
這是我的log4j.properties。我設立的屬性文件/日誌文件名內碼
PropertyConfigurator.configure("log4j.properties");
setLog4jFile("log.txt");
private static void setLog4jFile(String logFileName) {
try {
Logger rootLogger = Logger.getRootLogger();
RollingFileAppender appender = new RollingFileAppender(new PatternLayout("%p %t %c - %m%n"), logFileName, false);
appender.setMaxFileSize("10000KB");
appender.setMaxBackupIndex(10);
rootLogger.addAppender(appender);
}catch (Exception e) {
e.printStackTrace();
}
}
log4j.properties
log4j.rootCategory=info, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F%L) - %m%n
謝謝,這很有道理! – nilesh 2012-02-22 15:13:58