2011-12-05 61 views
1

我正在使用的系统使用库,该库使用log4j打印其结果。我不熟悉log4j的能力,所以我不知道如何捕捉结果。该库使用可以更改的配置文件,因此我可以操作输出。我想要做的是在流中捕获输出而不将其写入FS。我尝试重定向System.out,但最终重定向了调用方类的System.out,而不是log4j将log4j stdout重定向到InputStream

回答

2

所以,从你的问题,我认为你知道你可以有appender,例如,写入文件或stdout。

现在,它看起来像要写入到您自己的OutputStream,这意味着您无论如何都需要以编程方式访问该对象。然后我会说你需要编写你自己的appender,这实际上很简单。这里有一个enter link description here教程,虽然可能有很多(较短)的,这取决于你需要什么