0

我已经使用 Eclipse 创建了一个 java 项目。在那个项目中,我使用了 log4j.properties 文件。在项目中,在某些情况下,我使用了如下语句

logger.debug("This is from debug");
logger.info("This is from Info");

我的日志文件是

# Set root category priority to INFO and its only appender to CONSOLE.
#log4j.rootCategory=INFO, CONSOLE
#log4j.rootCategory=INFO, CONSOLE, LOGFILE

# Set the enterprise logger category to FATAL and its only appender to CONSOLE.
log4j.logger.org.apache.axis.enterprise=DEBUG, stdout

# Root logger option
 log4j.rootLogger=DEBUG,stdout
 log4j.appender.stdout=org.apache.log4j.ConsoleAppender
 log4j.appender.stdout.Threshold=DEBUG
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
 log4j.appender.stdout.layout.ConversionPattern=%-4r [%t] %-5p %c %x – %m%n

现在,当我运行项目时,我得到了所有的日志语句。例如。我在我的项目中使用 Quartz 计时器,所以当我运行程序时,我得到了 Quartz 的默认语句,例如

16   [main] INFO  org.quartz.core.QuartzScheduler  ? Quartz Scheduler v.2.1.4 created.

但我只想要自定义日志语句,即我编写的​​语句。如何得到这个?

4

3 回答 3

0

如果您只想要自定义日志语句,请关闭 rootLogger,并配置您的自定义日志记录,例如

log4j.rootLogger=OFF
log4j.logger.com.mycompany=DEBUG, CONSOLE
于 2013-02-15T09:18:28.790 回答
0

您可以为您的包和类显式设置记录器,如下所示

log4j.logger.com.mycompany=INFO
log4j.logger.com.mycompany.MyClass=DEBUG
于 2013-02-15T09:14:03.713 回答
0

您可以如下实现类级别记录器

log4j.logger.package.classes.classOne=信息,日志文件

确保删除其他 log4j 键(或注释它),以便只记录您的

于 2013-02-15T08:59:55.330 回答