log4j 怎样指定多种格式输出?

大家好:

我现在要在一个类里面输出日值的时候,有多个输出格式,就是在一个环境下配置多种输出格式的logger,一个使用 格式为 %m ,另一个使用格式 %d %5p (%F:%L) - %m。 但是在一个类里面可能调用两种不同的 logger么,现在我得配置是:


private static final Log log=LogFactory.getLog(ConfigUtil.class);

这里我配置了一个 log对象,只有一种输出格式,就是 log4j.properties中指定的格式。我的意思是配置两个 log对象:

private static final Log log1=LogFactory.getLog(ConfigUtil.class);

private static final Log log2=LogFactory.getLog(ConfigUtil.class);

这两个Log对象可以在 同一个 log4j.properties中指定不同的格式?而且把日值输出到一个 log文件中。

怎样配置这个log4j.properties呢? 还有就是在类中怎样调用不同的 Log对象?

不同appender有不同的target输出,平时都是这么用的。

需要不同格式输出可以定义INFO WARN DEBUG

多谢回复,我的输出level都是 debug,但是格式是不一样的,有的需要换行,有的不需要换行,这就必须在 log4j.properties中定义两种格式,在类中得到这两个实例并使用他们, 我配置了两个 log4j.wrapLogger 和 log4j.noWrapLogger,但是不可行!