在springboot中使用p6spy方式
作者:Jesee_Pinkmen
这篇文章主要介绍了在springboot中使用p6spy方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
前言
p6spy官网: https://p6spy.readthedocs.io/en/latest/
一、p6spy是什么?
p6spy是一种数据库动态监控框架,能记录在开发过程中后台执行的sql语句,方便程序员快速查找定位问题。
生成环境中考虑到性能因素,可以根据实际情况决定是否需要使用p6spy
二、使用步骤
1.引入库
代码如下(示例):
<dependency> <groupId>p6spy</groupId> <artifactId>p6spy</artifactId> <version>3.9.1</version> </dependency>
2.添加配置文件
创建spy.properties文件,保存在项目resources目录下。
如图:
spy.properties 内容如下:
# p6spy 性能分析插件配置文件 modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory # 自定义日志打印 logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger #日志输出到控制台 appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger # 使用日志系统记录 sql #appender=com.p6spy.engine.spy.appender.Slf4JLogger # 设置 p6spy driver 代理 #deregisterdrivers=true # 取消JDBC URL前缀 useprefix=true # 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset. excludecategories=info,debug,result,commit,resultset # 日期格式 dateformat=yyyy-MM-dd HH:mm:ss # 实际驱动可多个 #driverlist=org.h2.Driver # 是否开启慢SQL记录 outagedetection=false # 慢SQL记录标准 2 秒 outagedetectioninterval=2 # 是否过滤 Log filter=true
3.修改数据源的配置
没有引用之前的配置如下
spring: datasource: druid: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://xxx:3306/jj?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai username: xxx password: xxx
引用了之后的配置如下:
spring: datasource: druid: driver-class-name: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://xxx:3306/jj?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai username: xxx password: xxx
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。