【发布时间】:2013-06-30 20:11:21
【问题描述】:
我不使用 config 或 xml 文件来配置 log4j,因为不需要深入配置它。我只需要将消息打印到控制台。所以我这样做:
BasicConfigurator.configure();
为了只打印信息和更高级别的消息,我这样做:
Logger LOG = Logger.getLogger(MyClass.class)
LOG.setLevel(Level.INFO);
但我还是在控制台中看到了调试消息。但我只需要打印信息和实际的错误消息。
如何做到这一点?
UPD: 我创建了一个配置文件,其中包含,如教程中所述: manual以下:
log4j.rootLogger=INFO, stdout
# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L %m%n
log4j.logger.com.messagedna.facade=INFO
log4j.logger.com.messagedna.receiver=INFO
log4j.logger.com.messagedna.util=INFO
log4j.logger.com.messagedna.parser=INFO
我把它发给com.messagedna
在我需要记录器的每个课程中,我都写了以下内容:
Properties props = new Properties();
try {
props.load(new FileInputStream("/log4j.properties"));
} catch (Exception e){
LOG.error(e);
}
PropertyConfigurator.configure(props);
但是当我运行我的应用程序时,我得到以下信息:
log4j:WARN No appenders could be found for logger (com.messagedna.server.util.Config).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
【问题讨论】:
-
您的 log4j 位于文件系统的根目录?!
-
我无法使用这些概念。你的意思是配置文件在哪里还是什么?