Log4j IOStreams

Log4j IOStreams

IOStreams 组件是 Log4j API 的扩展,它提供了来自 java.io 的众多类,这些类可以写入 Logger 同时写入另一个 OutputStreamWriter,或者 InputStreamReader 读取的内容可以被 Logger 窃听

要求

Log4j IOStreams API 扩展需要 Log4j 2 API。此组件在 Log4j 2.1 中引入。有关更多信息,请参阅 运行时依赖项

使用

IOStreams 模块的主要入口点是构建器类 IoBuilder,特别是 IoBuilder.forLogger() 方法。此 API 扩展的一个主要用途是为 JDBC API 中的记录器设置。例如

PrintWriter logger = IoBuilder.forLogger(DriverManager.class)
                              .setLevel(Level.DEBUG)
                              .buildPrintWriter();
DriverManager.setLogWriter(logger);

使用 IoBuilder 类,可以设置更多选项。通常,可以从中构建六个主要类:ReaderWriterPrintWriterInputStreamOutputStreamPrintStream。面向输入的类用于窃听,而面向输出的类用于创建仅将其行作为日志消息输出的输出类,或者创建将通过其输出的所有行记录到其委托输出类的输出过滤器类。