我想输出工程中使用log4j针对不同模块的日志,输入到不同的文件,可以实现吗?

来源:百度知道 编辑:UC知道 时间:2024/06/07 20:42:24
我想输出工程中使用log4j针对不同模块的日志,输入到不同的文件,可以实现吗?

可以的
不同模块应该有不同的package名字,一般初始化log的时候会用package.classname来初始化,例如:

static Logger log = Logger.getLogger(Demo.class.getName());

在这个基础上,你可以通过log4j的配置文件,指定不同的模块输出到不同的log文件。

代码中:

static Logger log = Logger.getLogger("module1A");
static Logger log = Logger.getLogger("module1B");

配置文件中:
log4j.appender.appenderA=org.apache.log4j.FileAppender
log4j.appender.appenderA.File=moduleA.log
log4j.appender.appenderA.layout=org.apache.log4j.PatternLayout
log4j.appender.appenderA.layout.ConversionPattern=%r %p %t %c - %m%n

logj.logger.moduleA = debug,appendaA

对moduleB做类似配置即可

log4j资料推荐

The Complete log4j Manual

http://logging.apache.org/log4j/