我正在使用Eclipse和外部Tomcat(“使用tomcat安装,控制tomcat”)。
我们的应用程序日志目前使用log4j
配置FileAppender
。
是否可以使用ConsoleAppender
将日志消息重定向到eclipse控制台而不是?
我用ConsoleAppender
尝试了它并且它运行正常但是我必须为开发和生产模式创建一个额外的log4j.properties
文件(因为我们不希望在舞台或生产中使用控制台日志系统)。
答案 0 :(得分:2)
一种方法是使用代码本身编写自定义appender,并将该appender附加到root logger。
//如果它不是生产,则只执行此模式
ConsoleAppender console = new ConsoleAppender(); //create appender
//configure the appender
String PATTERN = "%d [%p|%c|%C{1}] %m%n";
console.setLayout(new PatternLayout(PATTERN));
console.setThreshold(Level.FATAL);
console.activateOptions();
//add appender to any Logger (here is root)
Logger.getRootLogger().addAppender(console);
我不知道您的应用程序代码,但您可以在代码中的某处修补此代码并从逻辑上解决此问题。 附:同样,这只是一个合理的解决方案。其他方式已知为log4j属性文件。