使用xml配置log4j时,我添加了类别:
<category name="com.myapp">
<priority value="debug"/>
<appender-ref ref="appender1"/>
<appender-ref ref="appender2"/>
</category>
我需要以编程方式配置它,因为它是动态配置。 我正在使用这个:
FileAppender fa = new FileAppender();
fa.setFile("mylog.log");
fa.setLayout(new PatternLayout("%d %-5p [%c{1}] %m%n"));
fa.setThreshold(Level.DEBUG);
fa.setAppend(true);
fa.activateOptions();
Logger.getRootLogger().addAppender(fa);
Logger logger = Logger.getLogger(MyClass.class);
logger.debug("Hello from logger");
当我使用上面的代码(正如预期的那样)时,我使用记录器从每个应用程序获取所有日志 - 第三方,我感兴趣的罐子中的日志等等。我想允许开发人员将包值添加到db(不是必需的)在运行时更新它,只有那些要写入日志文件。