在springboot中使用p6spy方式

 更新时间:2024年01月12日 09:59:33   作者: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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring类型转换 ConversionSerivce Convertor解析

    Spring类型转换 ConversionSerivce Convertor解析

    这篇文章主要介绍了Spring类型转换 ConversionSerivce Convertor的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • hadoop 详解如何实现数据排序

    hadoop 详解如何实现数据排序

    在很多业务场景下,需要对原始的数据读取分析后,将输出的结果按照指定的业务字段进行排序输出,方便上层应用对结果数据进行展示或使用,减少二次排序的成本
    2022-02-02
  • java基于UDP实现图片群发功能

    java基于UDP实现图片群发功能

    这篇文章主要为大家详细介绍了java基于UDP实现图片群发功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • 五种SpringBoot实现数据加密存储的方式总结

    五种SpringBoot实现数据加密存储的方式总结

    这篇文章主要为大家详细介绍了五种常见数据加密存储的方法(结合SpringBoot和MyBatisPlus框架进行实现),文中的示例代码讲解详细,需要的可以参考下
    2023-11-11
  • Java 阻塞队列BlockingQueue详解

    Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下
    2022-06-06
  • 使用maven如何将项目中的test代码打包进jar中

    使用maven如何将项目中的test代码打包进jar中

    这篇文章主要介绍了使用maven如何将项目中的test代码打包进jar中,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Java Spring详解如何配置数据源注解开发以及整合Junit

    Java Spring详解如何配置数据源注解开发以及整合Junit

    Spring 是目前主流的 Java Web 开发框架,是 Java 世界最为成功的框架。该框架是一个轻量级的开源框架,具有很高的凝聚力和吸引力,本篇文章带你了解如何配置数据源、注解开发以及整合Junit
    2021-10-10
  • 关于Java Spring三级缓存和循环依赖的深入理解

    关于Java Spring三级缓存和循环依赖的深入理解

    对于循环依赖,我相信读者无论只是听过也好,还是有过了解也好,至少都有所接触。但是我发现目前许多博客对于循环依赖的讲解并不清楚,都提到了Spring的循环依赖解决方案是三级缓存,但是三级缓存每一级的作用是什么,很多博客都没有提到,本篇文章带你深入了解
    2021-09-09
  • 浅谈MyBatis循环Map(高级用法)

    浅谈MyBatis循环Map(高级用法)

    这篇文章主要介绍了浅谈MyBatis循环Map(高级用法),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Java集合框架超详细小结

    Java集合框架超详细小结

    Java中提供的一种容器,可以用来存储多个数据。java集合大致可以分为Set,List,Queue和Map四种体系。这篇文章主要介绍了Java集合框架超详细小结,需要的朋友可以参考下
    2021-08-08

最新评论