在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
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
java整合itext pdf实现自定义PDF文件格式导出方式
Spring Boot整合iTextPDF实现自定义PDF导出,按周次和星期显示打卡记录打勾,需定义数据VO、表格结构,确保所有单元格填充(含空值),测试接口生成格式正确的PDF文件2025-07-07
java集合中HashSet LinkedHashSet TreeSet三者异同面试精讲
这篇文章主要为大家介绍了java集合中HashSet LinkedHashSet TreeSet三者异同面试精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-10-10
SpringBoot Webflux创建TCP/UDP server并使用handler解析数据
这篇文章主要介绍了SpringBoot Webflux创建TCP/UDP server并使用handler解析数据,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-02-02
Java 中 String、StringBuffer、StringBuilder 的区别
本文主要介绍了Java 中 String、StringBuffer、StringBuilder 的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2026-05-05


最新评论