From 8c912a81331f46c929b7d3107f2ff383c042ea35 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期四, 05 八月 2021 13:30:36 +0800
Subject: [PATCH] add 集成 性能分析插件 p6spy 更强劲的 SQL 分析

---
 ruoyi-admin/src/main/resources/application-prod.yml |    4 +++-
 ruoyi-admin/src/main/resources/spy.properties       |   26 ++++++++++++++++++++++++++
 pom.xml                                             |    7 +++++++
 ruoyi-admin/src/main/resources/application.yml      |    6 ++++--
 ruoyi-common/pom.xml                                |    5 +++++
 ruoyi-admin/src/main/resources/application-dev.yml  |    4 +++-
 6 files changed, 48 insertions(+), 4 deletions(-)

diff --git a/pom.xml b/pom.xml
index 0bdc04f..1c32623 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,6 +26,7 @@
         <velocity.version>1.7</velocity.version>
         <jwt.version>0.9.1</jwt.version>
         <mybatis-plus.version>3.4.3</mybatis-plus.version>
+        <p6spy.version>3.9.1</p6spy.version>
         <hutool.version>5.7.6</hutool.version>
         <feign.version>3.0.3</feign.version>
         <feign-okhttp.version>11.2</feign-okhttp.version>
@@ -118,6 +119,12 @@
                 <artifactId>mybatis-plus-extension</artifactId>
                 <version>${mybatis-plus.version}</version>
             </dependency>
+            <!-- sql鎬ц兘鍒嗘瀽鎻掍欢 -->
+            <dependency>
+                <groupId>p6spy</groupId>
+                <artifactId>p6spy</artifactId>
+                <version>${p6spy.version}</version>
+            </dependency>
 
             <dependency>
                 <groupId>cn.hutool</groupId>
diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml
index 8cd5d8b..ab2a0e8 100644
--- a/ruoyi-admin/src/main/resources/application-dev.yml
+++ b/ruoyi-admin/src/main/resources/application-dev.yml
@@ -4,7 +4,9 @@
     type: com.alibaba.druid.pool.DruidDataSource
     # 鍔ㄦ�佹暟鎹簮鏂囨。 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
     dynamic:
-      #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓� master
+      # 鎬ц兘鍒嗘瀽鎻掍欢(鏈夋�ц兘鎹熻�� 涓嶅缓璁敓浜х幆澧冧娇鐢�)
+      p6spy: true
+      # 璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓� master
       primary: master
       datasource:
         # 涓诲簱鏁版嵁婧�
diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml
index 9f29001..b807394 100644
--- a/ruoyi-admin/src/main/resources/application-prod.yml
+++ b/ruoyi-admin/src/main/resources/application-prod.yml
@@ -4,7 +4,9 @@
     type: com.alibaba.druid.pool.DruidDataSource
     # 鍔ㄦ�佹暟鎹簮鏂囨。 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
     dynamic:
-      #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓� master
+      # 鎬ц兘鍒嗘瀽鎻掍欢(鏈夋�ц兘鎹熻�� 涓嶅缓璁敓浜х幆澧冧娇鐢�)
+      p6spy: false
+      # 璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓� master
       primary: master
       datasource:
         # 涓诲簱鏁版嵁婧�
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index 9377ff0..8b633f8 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -162,8 +162,10 @@
     localCacheScope: SESSION
     # 寮�鍚疢ybatis浜岀骇缂撳瓨锛岄粯璁や负 true
     cacheEnabled: false
-    # 鏇磋缁嗙殑鏃ュ織杈撳嚭 浼氭湁鎬ц兘鎹熻��
-    # logImpl: org.apache.ibatis.logging.stdout.StdOutImpl
+    # 鏇磋缁嗙殑鏃ュ織杈撳嚭 浼氭湁鎬ц兘鎹熻�� org.apache.ibatis.logging.stdout.StdOutImpl
+    # 鍏抽棴鏃ュ織璁板綍 (鍙崟绾娇鐢� p6spy 鍒嗘瀽) org.apache.ibatis.logging.nologging.NoLoggingImpl
+    # 榛樿鏃ュ織杈撳嚭 org.apache.ibatis.logging.slf4j.Slf4jImpl
+    logImpl: org.apache.ibatis.logging.nologging.NoLoggingImpl
   global-config:
     # 鏄惁鎵撳嵃 Logo banner
     banner: true
diff --git a/ruoyi-admin/src/main/resources/spy.properties b/ruoyi-admin/src/main/resources/spy.properties
new file mode 100644
index 0000000..b361dbb
--- /dev/null
+++ b/ruoyi-admin/src/main/resources/spy.properties
@@ -0,0 +1,26 @@
+# 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=true
+# 慢SQL记录标准 2 秒
+outagedetectioninterval=2
+# 是否过滤 Log
+filter=true
+# 过滤 Log 时所排除的表名列表,以逗号分隔
+exclude=QRTZ_
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 5221faf..650411f 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -152,6 +152,11 @@
             <groupId>com.baomidou</groupId>
             <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
         </dependency>
+        <!-- sql鎬ц兘鍒嗘瀽鎻掍欢 -->
+        <dependency>
+            <groupId>p6spy</groupId>
+            <artifactId>p6spy</artifactId>
+        </dependency>
 
         <dependency>
             <groupId>com.baomidou</groupId>

--
Gitblit v1.9.3