复制和重定向System.err流

时间:2011-02-02 22:01:30

标签: java logging stream redirectstandardoutput

我目前在我的应用程序中使用java.util.logger。它将其输出发送到System.err。我需要它继续这样做,但我还需要将该输出发送到其他东西。

有没有办法复制System.err流,以便它可以发送到两个不同的源?

1 个答案:

答案 0 :(得分:5)

与笔记人员引用java.util.logger时一样,我倾向于至少建议您查看其他日志记录库,例如logbackslf4j

blog post描述了一种方法,可以轻松调整以支持您所要求的内容。简而言之,您需要做的是定义一个可以复制其输出的PrintStream,使用以下命令进行分配:

System.setErr(doubleLoggingPrintStream)