2010-10-29 45 views
1

在我们的产品中,我们使用了许多外部库。我们使用log4j进行日志记录,而且大多数库都是这样做的,所以我们将appender中的大部分消息都处理得很好。将System.out/System.err重定向到log4j仅用于某些瓶子

但有几个库只是使用System.out和System.err。所以我正在寻找一种方法来重定向System.out和System.err到我们的log4j appender 对于特定的jar只有,使用log4j的其他库不应该受到影响,有时打印到System.out和System.err也是,这些消息仍然应该去那里。

这是不是有可能?

回答

1

不确定你是否可以得到输出流Log4j追加,但如果你只是想将它发送到一个日志文件,你可以直接到的System.out如下文件:

 


File file = new File("my.log"); 
PrintStream printStream = new PrintStream(new FilleOutputStream(file)); 
System.setOut(printStream); 

 

您可以System.err的

做同样的

我喜欢Faheem的第一个链接,它有滚动文件的解决方案。

相关问题