如何为System.out制作Logger

Ant*_* K. 11 java logging slf4j system.out

我想知道如何获得System.out的org.slf4j.Logger.我知道这不好,但我需要它用于测试目的.

非常感谢.

adi*_*tsu 14

可以使用slf4j-simple并通过在程序启动时设置系统属性来写入标准输出:

System.setProperty("org.slf4j.simpleLogger.logFile", "System.out");
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请访问http://www.slf4j.org/api/org/slf4j/impl/SimpleLogger.html


Jea*_*end 5

SLF4J是伐木的门面。您需要一个日志记录实现。

如今,Logback是推荐的日志记录框架。

要登录到System.out,必须在Logback配置文件中使用ConsoleAppender。

范例:

<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
  <target>System.out</target>
  <encoder>
    <pattern>%-40.40c [%5.5thread] %-5p %X - %m%n</pattern>
  </encoder>
</appender>
Run Code Online (Sandbox Code Playgroud)

  • 我认为,logback(或log4j)对于此目的来说是过大的。slf4j-simple适用于此用例。 (2认同)

小智 5

将simplelogger.properties放在类路径中并将此行放入其中:

org.slf4j.simpleLogger.logFile=System.out
Run Code Online (Sandbox Code Playgroud)

这将导致SLF4J Simple Logger记录到标准输出而不是标准错误.


Ale*_* K. 0

这可能会有所帮助:sysout-over-slf4j

  • 这回答了错误的问题。OP询问如何将slf4j消息写入System.out。sysout-over-slf4j 将写入 System.out 的消息发送到 slf4j 框架。这是两件事。正确答案是 Jean-Philippe Briend (8认同)