引入maven配置
<groupId>p6spy</groupId>
<artifactId>p6spy</artifactId>
<version>3.7.0</version>
</dependency>
注意:推荐使用3.7.0 ,较新版本支持自定义sql格式
spy.properties 配置
找到driverlist,配置自己的数据库真实的驱动,支持多个
driverlist=com.mysql.cj.jdbc.Driver,org.h2.Driver
找到dateformat,
这里默认设置的时间格式和是MM-dd-yy HH:mm:ss:SS,建议调整为yyyy-MM-dd HH:mm:ss:SS
appender配置,定义日志输出的位置,这里我选择的是标准输出
appender=com.p6spy.engine.spy.appender.StdoutLogger
logMessageFormat配置,默认是SingleLineFormat,这种格式打印出来的sql包含sql变量填充前 也包括填充后的,看起来比较麻烦,我一般调整为
com.p6spy.engine.spy.appender.CustomLineFormat 这个有些过低的版本不支持,配置时注意一下
customLogMessageFormat 如果使用CustomLineFormat,这里是日志格式的配置模式,我用的是默认,可以参考
# %(connectionId) the id of the connection
# %(currentTime) the current time expressing in milliseconds
# %(executionTime) the time in milliseconds that the operation took to complete
# %(category) the category of the operation# %(effectiveSql) the SQL statement as submitted to the driver
# %(effectiveSqlSingleLine) the SQL statement as submitted to the driver, with all new lines removed
# %(sql) the SQL statement with all bind variables replaced with actual values
# %(sqlSingleLine) the SQL statement with all bind variables replaced with actual values, with all new lines removed
数据源配置
需要有两个参数调整
spring.datasource.driver-class-name 驱动名称,这里直接改成 com.p6spy.engine.spy.P6SpyDriver
spring.datasource.url:一般在jdbc:后面加上p6spy, 如:
H2:jdbc:p6spy:h2:mem:testdb
mysql:jdbc:p6spy:mysql://xxxx
网友评论