2.5.2、关于日志记录
上一小节介绍了一个日志记录器,我们选择了SFL4J库。对于日志记录,Vert.x也是没有特别要求的:您可以选择任何流行的Java日志库。我们推荐使用SLF4J,因为它是Java生态系统中受欢迎的日志抽象和统一库。
我们还建议使用Logback作为日志记录器实现。 集成SLF4J和Logback可以通过添加两个依赖关系来完成, 或者只是指向这两个库的logback-classic(它们来自同一作者):
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
默认情况下,SLF4J向控制台输出来自Vert.x,Netty,C3PO和wiki应用程序的许多日志事件。我们可以通过添加src/main /resources /logback.xml配置文件来减少详细程度(请参见https://logback.qos.ch /更多细节):
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<logger name="com.mchange.v2" level="warn"/>
<logger name="io.netty" level="warn"/>
<logger name="io.vertx" level="info"/>
<logger name="io.vertx.guides.wiki" level="debug"/>
<root level="debug">
<appender-ref ref="STDOUT"/>
</root>
</configuration>
最后但并非最不重要的是,HSQLDB在嵌入模式中不能很好地与日志记录器集成。默认情况下,它会尝试重新配置日志记录系统,因此,在执行应用程序时,我们需要向JVM传递“-Dhsqldb.reconfig_logging=false”属性来禁用它。