如何设置 HikariCP 的日志级别?
How do I set the logging level for HikariCP?
目前,HikariCP 的记录级别为 INFO
,我想将其设置为 SEVERE
。当我尝试在父记录器(我能找到的唯一记录参考)上设置级别时,它会抛出错误:
dataSource.getParentLogger().setLevel( Level.SEVERE );
错误:
Caused by: java.sql.SQLFeatureNotSupportedException
at com.zaxxer.hikari.HikariDataSource.getParentLogger(HikariDataSource.java:176)
如何正确设置日志级别?
HikariCP 在后台使用 slf4j。您必须在实际记录器实现上设置日志级别(logback、log4j、JUL、 ...)。
此外,slf4j 提供了一个非常简单的记录器实现 slf4j-simple。只需将依赖项添加到 pom
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.5</version>
</dependency>
然后您可以使用 system properties 配置它,例如
java -Dorg.slf4j.simpleLogger.log.com.zaxxer.hikari=error ...
如果有,请从类路径或 lib 目录中删除这些 jar。
logback-classic.jarlogback-core.jar
另一种以编程方式设置日志级别的方法
import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.Level;
ch.qos.logback.classic.Logger hikariLogger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger("com.zaxxer.hikari");
hikariLogger.setLevel(Level.ERROR);
目前,HikariCP 的记录级别为 INFO
,我想将其设置为 SEVERE
。当我尝试在父记录器(我能找到的唯一记录参考)上设置级别时,它会抛出错误:
dataSource.getParentLogger().setLevel( Level.SEVERE );
错误:
Caused by: java.sql.SQLFeatureNotSupportedException
at com.zaxxer.hikari.HikariDataSource.getParentLogger(HikariDataSource.java:176)
如何正确设置日志级别?
HikariCP 在后台使用 slf4j。您必须在实际记录器实现上设置日志级别(logback、log4j、JUL、 ...)。
此外,slf4j 提供了一个非常简单的记录器实现 slf4j-simple。只需将依赖项添加到 pom
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.5</version>
</dependency>
然后您可以使用 system properties 配置它,例如
java -Dorg.slf4j.simpleLogger.log.com.zaxxer.hikari=error ...
如果有,请从类路径或 lib 目录中删除这些 jar。
logback-classic.jarlogback-core.jar
另一种以编程方式设置日志级别的方法
import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.Level;
ch.qos.logback.classic.Logger hikariLogger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger("com.zaxxer.hikari");
hikariLogger.setLevel(Level.ERROR);