虽然所有帖子都在这里阅读,但我的问题重复了其他人的问题,但答案中的答案并非如此:
我有一个很大的项目,几乎每个班级都有一个记录器。我不会继续只使用这一个Logger,我希望它能够创建 - 包含INFO和ERROR的日志文件 - 仅包含ERROR的单独日志文件
这是用于记录的代码:
static Logger log = Logger.getLogger(TestLogger.class);
public static void main(String[] args) {
log.debug("debug");
log.info("info");
log.error("error");
}
这就是我认为我可以配置它,省略布局的东西。
log4j.rootLogger=INFO, stdout, file
log4j.logger.errors = ERROR, stdout, file, file2
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
...
log4j.appender.file=metaobjects.io.CustomFileAppender
log4j.appender.file.File=c:/temp/execution%timestamp/test.log
...
log4j.appender.file2=metaobjects.io.CustomFileAppender
log4j.appender.file2.File=c:/temp/execution%timestamp/error.log
有没有办法得到我想要或做的事情我在每个班级都需要两个Logger对象?
答案 0 :(得分:0)
您需要创建具有不同阈值的多个appender。
请注意,debug
会消耗error
,并会消耗info
日志记录。
尝试研究本教程 https://veerasundar.com/blog/2009/08/log4j-tutorial-additivity-what-and-why/