java - 重定向 System.out.println

标签 java logging out redirectstandardoutput

我的应用程序有许多 System.out.println() 语句。

我想从 println 捕获消息并将它们发送到标准记录器(Log4j、JUL 等)。

怎么做?

最佳答案

System 类有一个 setOutsetErr可用于将输出流更改为,例如,带有支持 File 的新 PrintStream,或者在这种情况下,可能是另一个使用您的日志子系统的流选择。


请记住,如果您将日志库配置为输出到标准输出或错误(可能是无限递归类型),您很可能会遇到麻烦。

如果是这种情况,您可能只想将 System.out.print 类型的语句替换为真正的日志记录调用。

关于java - 重定向 System.out.println,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3228427/

相关文章:

node.js - NodeJS Winston 记录器不打印跟踪

c# - 如何判断是否已经设置了 out 参数?

java - java web服务使用什么方法?

java - 我放入自定义数组适配器后 ListView 崩溃

linux - 检查部署在多个服务器上的同一应用程序的日志文件的最佳方法是什么?

python - 登录类(class) - Python

java.lang.Exception : Test class should have exactly one public constructor

java - Set 中的 Get 和 Set 方法

c# - 如何重写 bool TrySomething(List<T> items, out List<T> itemsThatFailed)

c# - 在 C# 4.0 中,为什么方法中的输出参数不能协变?