diff --git a/config/dev/datasource.yml b/config/dev/datasource.yml
index 7d0989f8..638032c0 100644
--- a/config/dev/datasource.yml
+++ b/config/dev/datasource.yml
@@ -16,7 +16,7 @@ datasource:
spring:
datasource:
- type: com.alibaba.druid.pool.DruidDataSource
+ type: com.zaxxer.hikari.HikariDataSource
# 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
dynamic:
# 性能分析插件(有性能损耗 不建议生产环境使用)
@@ -25,21 +25,21 @@ spring:
seata: true
# 严格模式 匹配不到数据源则报错
strict: true
- druid:
- initial-size: 5
- min-idle: 5
- maxActive: 20
- maxWait: 60000
- timeBetweenEvictionRunsMillis: 60000
- minEvictableIdleTimeMillis: 300000
- validationQuery: SELECT 1 FROM DUAL
- testWhileIdle: true
- testOnBorrow: false
- testOnReturn: false
- poolPreparedStatements: true
- maxPoolPreparedStatementPerConnectionSize: 20
- filters: stat,slf4j
- connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+ hikari:
+ # 最大连接池数量
+ maxPoolSize: 20
+ # 最小空闲线程数量
+ minIdle: 10
+ # 配置获取连接等待超时的时间
+ connectionTimeout: 10000
+ # 校验超时时间
+ validationTimeout: 5000
+ # 空闲连接存活最大时间,默认10分钟
+ idleTimeout: 60000
+ # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
+ maxLifetime: 900000
+ # 连接测试query(配置检测连接是否有效)
+ connectionTestQuery: SELECT 1
# seata配置
seata:
diff --git a/config/dev/ruoyi-gen.yml b/config/dev/ruoyi-gen.yml
index f87dfbaa..fc68e409 100644
--- a/config/dev/ruoyi-gen.yml
+++ b/config/dev/ruoyi-gen.yml
@@ -6,6 +6,7 @@ spring:
datasource:
# 主库数据源
master:
+ type: ${spring.datasource.type}
driver-class-name: com.mysql.cj.jdbc.Driver
url: ${datasource.system-master.url}
username: ${datasource.system-master.username}
@@ -13,6 +14,7 @@ spring:
# 从库数据源
#slave:
# lazy: true
+ # type: ${spring.datasource.type}
# driver-class-name:
# url:
# username:
diff --git a/config/dev/ruoyi-job.yml b/config/dev/ruoyi-job.yml
index ed0bf037..cd0ad096 100644
--- a/config/dev/ruoyi-job.yml
+++ b/config/dev/ruoyi-job.yml
@@ -6,6 +6,7 @@ spring:
datasource:
# 主库数据源
master:
+ type: ${spring.datasource.type}
driver-class-name: com.mysql.cj.jdbc.Driver
url: ${datasource.job.url}
username: ${datasource.job.username}
diff --git a/config/dev/ruoyi-resource.yml b/config/dev/ruoyi-resource.yml
index c0322b2e..1b455e67 100644
--- a/config/dev/ruoyi-resource.yml
+++ b/config/dev/ruoyi-resource.yml
@@ -6,16 +6,11 @@ spring:
datasource:
# 主库数据源
master:
+ type: ${spring.datasource.type}
driver-class-name: com.mysql.cj.jdbc.Driver
url: ${datasource.system-master.url}
username: ${datasource.system-master.username}
password: ${datasource.system-master.password}
- # 从库数据源
- # slave:
- # driver-class-name:
- # url:
- # username:
- # password:
mail:
enabled: false
diff --git a/config/dev/ruoyi-system.yml b/config/dev/ruoyi-system.yml
index 6b3d4683..7df4dd94 100644
--- a/config/dev/ruoyi-system.yml
+++ b/config/dev/ruoyi-system.yml
@@ -6,12 +6,14 @@ spring:
datasource:
# 主库数据源
master:
+ type: ${spring.datasource.type}
driver-class-name: com.mysql.cj.jdbc.Driver
url: ${datasource.system-master.url}
username: ${datasource.system-master.username}
password: ${datasource.system-master.password}
# 从库数据源
# slave:
+ # type: ${spring.datasource.type}
# driver-class-name:
# url:
# username:
diff --git a/config/dev/seata-server.properties b/config/dev/seata-server.properties
index ca4ee396..739a539d 100644
--- a/config/dev/seata-server.properties
+++ b/config/dev/seata-server.properties
@@ -15,7 +15,7 @@ store.session.mode=db
store.publicKey=
#These configurations are required if the `store mode` is `db`. If `store.mode,store.lock.mode,store.session.mode` are not equal to `db`, you can remove the configuration block.
-store.db.datasource=druid
+store.db.datasource=hikari
store.db.dbType=mysql
store.db.driverClassName=com.mysql.cj.jdbc.Driver
store.db.url=jdbc:mysql://127.0.0.1:3306/ry-seata?useUnicode=true&rewriteBatchedStatements=true
@@ -30,6 +30,17 @@ store.db.queryLimit=100
store.db.lockTable=lock_table
store.db.maxWait=5000
+# redis 模式 store.mode=redis 开启 (控制台查询功能有限,不影响实际执行功能)
+# store.redis.host=127.0.0.1
+# store.redis.port=6379
+# 最大连接数
+# store.redis.maxConn=10
+# 最小连接数
+# store.redis.minConn=1
+# store.redis.database=0
+# store.redis.password=
+# store.redis.queryLimit=100
+
#Transaction rule configuration, only for the server
server.recovery.committingRetryPeriod=1000
server.recovery.asynCommittingRetryPeriod=1000
diff --git a/docker/skywalking/README.md b/docker/skywalking/README.md
new file mode 100644
index 00000000..07d831c3
--- /dev/null
+++ b/docker/skywalking/README.md
@@ -0,0 +1,14 @@
+# 说明
+项目使用 `skywalking` 官方 `agent` 探针做了精简和扩充
+
+从官方自带的插件库 删除了项目中大概率不会用到的插件
+
+保留了项目中可能会用到的插件
+
+扩展了一些官方不支持的插件
+
+插件过多会导致很严重的性能问题 建议不要用过多插件
+# 扩展
+项目开发中遇到一些插件包内没有的功能可以去 `skywalking` 官方下载
+
+将下载好的插件放入 `plugins` 目录下即可
\ No newline at end of file
diff --git a/docker/skywalking/agent/optional-plugins/apm-ehcache-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-ehcache-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 33ce0b1a..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-ehcache-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-fastjson-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-fastjson-1.x-plugin-8.12.0.jar
deleted file mode 100644
index e03e6f12..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-fastjson-1.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-gson-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-gson-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 68a3a9ea..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-gson-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-jackson-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-jackson-2.x-plugin-8.12.0.jar
deleted file mode 100644
index b6b29e82..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-jackson-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-quartz-scheduler-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-quartz-scheduler-2.x-plugin-8.12.0.jar
deleted file mode 100644
index c3b6bcbe..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-quartz-scheduler-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-shenyu-2.4.x-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/apm-shenyu-2.4.x-plugin-8.12.0.jar
deleted file mode 100644
index ca42afa7..00000000
Binary files a/docker/skywalking/agent/optional-plugins/apm-shenyu-2.4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/trace-sampler-cpu-policy-plugin-8.12.0.jar b/docker/skywalking/agent/optional-plugins/trace-sampler-cpu-policy-plugin-8.12.0.jar
deleted file mode 100644
index 7ff6d6c4..00000000
Binary files a/docker/skywalking/agent/optional-plugins/trace-sampler-cpu-policy-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-reporter-plugins/kafka-reporter-plugin-8.12.0.jar b/docker/skywalking/agent/optional-reporter-plugins/kafka-reporter-plugin-8.12.0.jar
deleted file mode 100644
index bbccb541..00000000
Binary files a/docker/skywalking/agent/optional-reporter-plugins/kafka-reporter-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-reporter-plugins/lz4-java-1.6.0.jar b/docker/skywalking/agent/optional-reporter-plugins/lz4-java-1.6.0.jar
deleted file mode 100644
index ad5de824..00000000
Binary files a/docker/skywalking/agent/optional-reporter-plugins/lz4-java-1.6.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-reporter-plugins/snappy-java-1.1.7.3.jar b/docker/skywalking/agent/optional-reporter-plugins/snappy-java-1.1.7.3.jar
deleted file mode 100644
index afda191f..00000000
Binary files a/docker/skywalking/agent/optional-reporter-plugins/snappy-java-1.1.7.3.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-reporter-plugins/zstd-jni-1.4.3-1.jar b/docker/skywalking/agent/optional-reporter-plugins/zstd-jni-1.4.3-1.jar
deleted file mode 100644
index 9fb89a45..00000000
Binary files a/docker/skywalking/agent/optional-reporter-plugins/zstd-jni-1.4.3-1.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-activemq-5.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-activemq-5.x-plugin-8.12.0.jar
deleted file mode 100644
index f288bd08..00000000
Binary files a/docker/skywalking/agent/plugins/apm-activemq-5.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-armeria-0.84.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-armeria-0.84.x-plugin-8.12.0.jar
deleted file mode 100644
index 433464c2..00000000
Binary files a/docker/skywalking/agent/plugins/apm-armeria-0.84.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-armeria-0.85.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-armeria-0.85.x-plugin-8.12.0.jar
deleted file mode 100644
index 6a7d4ad2..00000000
Binary files a/docker/skywalking/agent/plugins/apm-armeria-0.85.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-asynchttpclient-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-asynchttpclient-2.x-plugin-8.12.0.jar
deleted file mode 100644
index bab55c57..00000000
Binary files a/docker/skywalking/agent/plugins/apm-asynchttpclient-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-avro-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-avro-plugin-8.12.0.jar
deleted file mode 100644
index 1c6f5efc..00000000
Binary files a/docker/skywalking/agent/plugins/apm-avro-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-cassandra-java-driver-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-cassandra-java-driver-3.x-plugin-8.12.0.jar
deleted file mode 100644
index de291564..00000000
Binary files a/docker/skywalking/agent/plugins/apm-cassandra-java-driver-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-clickhouse-0.3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-clickhouse-0.3.x-plugin-8.12.0.jar
deleted file mode 100644
index f1ed59bd..00000000
Binary files a/docker/skywalking/agent/plugins/apm-clickhouse-0.3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-customize-enhance-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-customize-enhance-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-customize-enhance-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-customize-enhance-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-cxf-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-cxf-3.x-plugin-8.12.0.jar
deleted file mode 100644
index 2bedf2cd..00000000
Binary files a/docker/skywalking/agent/plugins/apm-cxf-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-elastic-job-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-elastic-job-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 88c388ec..00000000
Binary files a/docker/skywalking/agent/plugins/apm-elastic-job-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-elasticjob-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-elasticjob-3.x-plugin-8.12.0.jar
deleted file mode 100644
index 15fa3ccf..00000000
Binary files a/docker/skywalking/agent/plugins/apm-elasticjob-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-elasticsearch-5.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-elasticsearch-5.x-plugin-8.12.0.jar
deleted file mode 100644
index 1624d032..00000000
Binary files a/docker/skywalking/agent/plugins/apm-elasticsearch-5.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-finagle-6.25.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-finagle-6.25.x-plugin-8.12.0.jar
deleted file mode 100644
index 9a34ba1f..00000000
Binary files a/docker/skywalking/agent/plugins/apm-finagle-6.25.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-guava-cache-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-guava-cache-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-guava-cache-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-guava-cache-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-hbase-1.x-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-hbase-1.x-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 9a05ac92..00000000
Binary files a/docker/skywalking/agent/plugins/apm-hbase-1.x-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-hystrix-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-hystrix-1.x-plugin-8.12.0.jar
deleted file mode 100644
index 962ed31f..00000000
Binary files a/docker/skywalking/agent/plugins/apm-hystrix-1.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/bootstrap-plugins/apm-jdk-http-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jdk-http-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/bootstrap-plugins/apm-jdk-http-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-jdk-http-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/bootstrap-plugins/apm-jdk-threading-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jdk-threading-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/bootstrap-plugins/apm-jdk-threading-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-jdk-threading-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/bootstrap-plugins/apm-jdk-threadpool-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jdk-threadpool-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/bootstrap-plugins/apm-jdk-threadpool-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-jdk-threadpool-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-jetty-client-9.0-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jetty-client-9.0-plugin-8.12.0.jar
deleted file mode 100644
index 208882bd..00000000
Binary files a/docker/skywalking/agent/plugins/apm-jetty-client-9.0-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-jetty-client-9.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jetty-client-9.x-plugin-8.12.0.jar
deleted file mode 100644
index 9d55793d..00000000
Binary files a/docker/skywalking/agent/plugins/apm-jetty-client-9.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-jetty-server-9.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-jetty-server-9.x-plugin-8.12.0.jar
deleted file mode 100644
index d7b521f9..00000000
Binary files a/docker/skywalking/agent/plugins/apm-jetty-server-9.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-kotlin-coroutine-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-kotlin-coroutine-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-kotlin-coroutine-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-kotlin-coroutine-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-kylin-jdbc-2.6.x-3.x-4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-kylin-jdbc-2.6.x-3.x-4.x-plugin-8.12.0.jar
deleted file mode 100644
index b5be0f5c..00000000
Binary files a/docker/skywalking/agent/plugins/apm-kylin-jdbc-2.6.x-3.x-4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-lettuce-5.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-lettuce-5.x-plugin-8.12.0.jar
deleted file mode 100644
index 4008e056..00000000
Binary files a/docker/skywalking/agent/plugins/apm-lettuce-5.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-light4j-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-light4j-plugin-8.12.0.jar
deleted file mode 100644
index 863e0e2b..00000000
Binary files a/docker/skywalking/agent/plugins/apm-light4j-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-mongodb-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-mongodb-2.x-plugin-8.12.0.jar
deleted file mode 100644
index c6ba2534..00000000
Binary files a/docker/skywalking/agent/plugins/apm-mongodb-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-mybatis-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-mybatis-3.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-mybatis-3.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-mybatis-3.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-mysql-6.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-mysql-6.x-plugin-8.12.0.jar
deleted file mode 100644
index a44d2ffe..00000000
Binary files a/docker/skywalking/agent/plugins/apm-mysql-6.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-neo4j-4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-neo4j-4.x-plugin-8.12.0.jar
deleted file mode 100644
index 8413949e..00000000
Binary files a/docker/skywalking/agent/plugins/apm-neo4j-4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-nutz-http-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-nutz-http-1.x-plugin-8.12.0.jar
deleted file mode 100644
index 9e4924f9..00000000
Binary files a/docker/skywalking/agent/plugins/apm-nutz-http-1.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-nutz-mvc-annotation-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-nutz-mvc-annotation-1.x-plugin-8.12.0.jar
deleted file mode 100644
index dc494aa1..00000000
Binary files a/docker/skywalking/agent/plugins/apm-nutz-mvc-annotation-1.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-play-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-play-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 27a79600..00000000
Binary files a/docker/skywalking/agent/plugins/apm-play-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-sentinel-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-sentinel-1.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-sentinel-1.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-sentinel-1.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-servicecomb-java-chassis-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-servicecomb-java-chassis-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 8ef46581..00000000
Binary files a/docker/skywalking/agent/plugins/apm-servicecomb-java-chassis-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-sharding-sphere-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-sharding-sphere-3.x-plugin-8.12.0.jar
deleted file mode 100644
index f364d9b7..00000000
Binary files a/docker/skywalking/agent/plugins/apm-sharding-sphere-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-solrj-7.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-solrj-7.x-plugin-8.12.0.jar
deleted file mode 100644
index 09427100..00000000
Binary files a/docker/skywalking/agent/plugins/apm-solrj-7.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-annotation-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-annotation-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-annotation-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-annotation-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-2.0.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-cloud-gateway-2.0.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-2.0.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-cloud-gateway-2.0.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-2.1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-cloud-gateway-2.1.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-2.1.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-cloud-gateway-2.1.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-cloud-gateway-3.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-cloud-gateway-3.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-cloud-gateway-3.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-tx-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-tx-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-tx-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-tx-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/optional-plugins/apm-spring-webflux-5.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spring-webflux-5.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-spring-webflux-5.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-spring-webflux-5.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-spymemcached-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-spymemcached-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 1c4c2e65..00000000
Binary files a/docker/skywalking/agent/plugins/apm-spymemcached-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-struts2-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-struts2-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 9281be85..00000000
Binary files a/docker/skywalking/agent/plugins/apm-struts2-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-trace-ignore-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-trace-ignore-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-trace-ignore-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-trace-ignore-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/apm-vertx-core-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-vertx-core-3.x-plugin-8.12.0.jar
deleted file mode 100644
index 3270fd7f..00000000
Binary files a/docker/skywalking/agent/plugins/apm-vertx-core-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-vertx-core-4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-vertx-core-4.x-plugin-8.12.0.jar
deleted file mode 100644
index 90c7bb2a..00000000
Binary files a/docker/skywalking/agent/plugins/apm-vertx-core-4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/apm-xmemcached-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-xmemcached-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 0c34aa30..00000000
Binary files a/docker/skywalking/agent/plugins/apm-xmemcached-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/optional-plugins/apm-zookeeper-3.4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/apm-zookeeper-3.4.x-plugin-8.12.0.jar
similarity index 100%
rename from docker/skywalking/agent/optional-plugins/apm-zookeeper-3.4.x-plugin-8.12.0.jar
rename to docker/skywalking/agent/plugins/apm-zookeeper-3.4.x-plugin-8.12.0.jar
diff --git a/docker/skywalking/agent/plugins/baidu-brpc-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/baidu-brpc-plugin-8.12.0.jar
deleted file mode 100644
index 143ec6bf..00000000
Binary files a/docker/skywalking/agent/plugins/baidu-brpc-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/dbcp-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/dbcp-2.x-plugin-8.12.0.jar
deleted file mode 100644
index 4daf4825..00000000
Binary files a/docker/skywalking/agent/plugins/dbcp-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/jedis-2.x-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/jedis-2.x-3.x-plugin-8.12.0.jar
deleted file mode 100644
index 5cf0ab2f..00000000
Binary files a/docker/skywalking/agent/plugins/jedis-2.x-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/jedis-4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/jedis-4.x-plugin-8.12.0.jar
deleted file mode 100644
index c524fad2..00000000
Binary files a/docker/skywalking/agent/plugins/jedis-4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/jsonrpc4j-1.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/jsonrpc4j-1.x-plugin-8.12.0.jar
deleted file mode 100644
index 4a166435..00000000
Binary files a/docker/skywalking/agent/plugins/jsonrpc4j-1.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/micronaut-http-client-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/micronaut-http-client-plugin-8.12.0.jar
deleted file mode 100644
index 322c7526..00000000
Binary files a/docker/skywalking/agent/plugins/micronaut-http-client-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/micronaut-http-server-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/micronaut-http-server-plugin-8.12.0.jar
deleted file mode 100644
index 40693bb6..00000000
Binary files a/docker/skywalking/agent/plugins/micronaut-http-server-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/motan-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/motan-plugin-8.12.0.jar
deleted file mode 100644
index b1c9d245..00000000
Binary files a/docker/skywalking/agent/plugins/motan-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/nats-2.14.x-2.15.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/nats-2.14.x-2.15.x-plugin-8.12.0.jar
deleted file mode 100644
index a5cf5ebd..00000000
Binary files a/docker/skywalking/agent/plugins/nats-2.14.x-2.15.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/okhttp-2.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/okhttp-2.x-plugin-8.12.0.jar
deleted file mode 100644
index a5762f0d..00000000
Binary files a/docker/skywalking/agent/plugins/okhttp-2.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/resteasy-server-3.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/resteasy-server-3.x-plugin-8.12.0.jar
deleted file mode 100644
index f4ebe1ce..00000000
Binary files a/docker/skywalking/agent/plugins/resteasy-server-3.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/resteasy-server-4.x-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/resteasy-server-4.x-plugin-8.12.0.jar
deleted file mode 100644
index c1b8fc1c..00000000
Binary files a/docker/skywalking/agent/plugins/resteasy-server-4.x-plugin-8.12.0.jar and /dev/null differ
diff --git a/docker/skywalking/agent/plugins/sofa-rpc-plugin-8.12.0.jar b/docker/skywalking/agent/plugins/sofa-rpc-plugin-8.12.0.jar
deleted file mode 100644
index f98236d7..00000000
Binary files a/docker/skywalking/agent/plugins/sofa-rpc-plugin-8.12.0.jar and /dev/null differ
diff --git a/pom.xml b/pom.xml
index 9b605ac8..7d910e42 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,6 @@
3.5.10
3.5.2
3.9.1
- 1.2.12
3.5.2
2.3
1.2.83
diff --git a/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboConsumerFilter.java b/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboConsumerFilter.java
index 4023dda9..f7518b0d 100644
--- a/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboConsumerFilter.java
+++ b/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboConsumerFilter.java
@@ -2,7 +2,7 @@ package cn.dev33.satoken.context.dubbo.filter;
import cn.dev33.satoken.SaManager;
import cn.dev33.satoken.context.SaTokenContextDefaultImpl;
-import cn.dev33.satoken.id.SaIdUtil;
+import cn.dev33.satoken.same.SaSameUtil;
import cn.dev33.satoken.spring.SaBeanInject;
import cn.dev33.satoken.stp.StpUtil;
import cn.dev33.satoken.util.SaTokenConsts;
@@ -29,8 +29,8 @@ public class SaTokenDubboConsumerFilter implements Filter {
SpringUtils.getBean(SaBeanInject.class);
// 追加 Id-Token 参数
- if(SaManager.getConfig().getCheckIdToken()) {
- RpcContext.getServiceContext().setAttachment(SaIdUtil.ID_TOKEN, SaIdUtil.getToken());
+ if(SaManager.getConfig().getCheckSameToken()) {
+ RpcContext.getServiceContext().setAttachment(SaSameUtil.SAME_TOKEN, SaSameUtil.getToken());
}
// 1. 调用前,向下传递会话Token
diff --git a/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboProviderFilter.java b/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboProviderFilter.java
index 1a3b3346..6436b991 100644
--- a/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboProviderFilter.java
+++ b/ruoyi-common/ruoyi-common-dubbo/src/main/java/cn/dev33/satoken/context/dubbo/filter/SaTokenDubboProviderFilter.java
@@ -1,7 +1,7 @@
package cn.dev33.satoken.context.dubbo.filter;
import cn.dev33.satoken.SaManager;
-import cn.dev33.satoken.id.SaIdUtil;
+import cn.dev33.satoken.same.SaSameUtil;
import cn.dev33.satoken.spring.SaBeanInject;
import com.ruoyi.common.core.utils.SpringUtils;
import org.apache.dubbo.common.constants.CommonConstants;
@@ -26,9 +26,13 @@ public class SaTokenDubboProviderFilter implements Filter {
SpringUtils.getBean(SaBeanInject.class);
// RPC 调用鉴权
- if(SaManager.getConfig().getCheckIdToken()) {
- String idToken = invocation.getAttachment(SaIdUtil.ID_TOKEN);
- SaIdUtil.checkToken(idToken);
+ if(SaManager.getConfig().getCheckSameToken()) {
+ String idToken = invocation.getAttachment(SaSameUtil.SAME_TOKEN);
+ // dubbo部分协议会将参数变为小写,详细参考:https://gitee.com/dromara/sa-token/issues/I4WXQG
+ if(idToken == null) {
+ idToken = invocation.getAttachment(SaSameUtil.SAME_TOKEN.toLowerCase());
+ }
+ SaSameUtil.checkToken(idToken);
}
// 开始调用
diff --git a/ruoyi-common/ruoyi-common-mybatis/pom.xml b/ruoyi-common/ruoyi-common-mybatis/pom.xml
index ccab60ca..841dbbc0 100644
--- a/ruoyi-common/ruoyi-common-mybatis/pom.xml
+++ b/ruoyi-common/ruoyi-common-mybatis/pom.xml
@@ -38,13 +38,6 @@
p6spy
-
-
- com.alibaba
- druid-spring-boot-starter
- ${druid.version}
-
-
com.baomidou
diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/core/OssClient.java
index 390b770b..bbfb17ab 100644
--- a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/core/OssClient.java
+++ b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/core/OssClient.java
@@ -2,6 +2,7 @@ package com.ruoyi.common.oss.core;
import cn.hutool.core.util.IdUtil;
import com.amazonaws.ClientConfiguration;
+import com.amazonaws.HttpMethod;
import com.amazonaws.Protocol;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
@@ -16,13 +17,15 @@ import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.oss.constant.OssConstant;
import com.ruoyi.common.oss.entity.UploadResult;
+import com.ruoyi.common.oss.enumd.AccessPolicyType;
import com.ruoyi.common.oss.enumd.PolicyType;
import com.ruoyi.common.oss.exception.OssException;
import com.ruoyi.common.oss.properties.OssProperties;
-
import java.io.ByteArrayInputStream;
import java.io.InputStream;
+import java.net.URL;
+import java.util.Date;
/**
* S3 存储协议 所有兼容S3协议的云厂商均支持
@@ -80,9 +83,10 @@ public class OssClient {
return;
}
CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName);
- createBucketRequest.setCannedAcl(CannedAccessControlList.PublicRead);
+ AccessPolicyType accessPolicy = getAccessPolicy();
+ createBucketRequest.setCannedAcl(accessPolicy.getAcl());
client.createBucket(createBucketRequest);
- client.setBucketPolicy(bucketName, getPolicy(bucketName, PolicyType.READ));
+ client.setBucketPolicy(bucketName, getPolicy(bucketName, accessPolicy.getPolicyType()));
} catch (Exception e) {
throw new OssException("创建Bucket失败, 请核对配置信息:[" + e.getMessage() + "]");
}
@@ -99,7 +103,7 @@ public class OssClient {
metadata.setContentLength(inputStream.available());
PutObjectRequest putObjectRequest = new PutObjectRequest(properties.getBucketName(), path, inputStream, metadata);
// 设置上传对象的 Acl 为公共读
- putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead);
+ putObjectRequest.setCannedAcl(getAccessPolicy().getAcl());
client.putObject(putObjectRequest);
} catch (Exception e) {
throw new OssException("上传文件失败,请检查配置信息:[" + e.getMessage() + "]");
@@ -112,7 +116,7 @@ public class OssClient {
try {
client.deleteObject(properties.getBucketName(), path);
} catch (Exception e) {
- throw new OssException("上传文件失败,请检查配置信息:[" + e.getMessage() + "]");
+ throw new OssException("删除文件失败,请检查配置信息:[" + e.getMessage() + "]");
}
}
@@ -130,10 +134,17 @@ public class OssClient {
* @param path 完整文件路径
*/
public ObjectMetadata getObjectMetadata(String path) {
+ path = path.replace(getUrl() + "/", "");
S3Object object = client.getObject(properties.getBucketName(), path);
return object.getObjectMetadata();
}
+ public InputStream getObjectContent(String path) {
+ path = path.replace(getUrl() + "/", "");
+ S3Object object = client.getObject(properties.getBucketName(), path);
+ return object.getObjectContent();
+ }
+
public String getUrl() {
String domain = properties.getDomain();
String endpoint = properties.getEndpoint();
@@ -168,6 +179,25 @@ public class OssClient {
return configKey;
}
+ public String getPrivateUrl(String objectKey, Integer second) {
+ GeneratePresignedUrlRequest generatePresignedUrlRequest =
+ new GeneratePresignedUrlRequest(properties.getBucketName(), objectKey)
+ .withMethod(HttpMethod.GET)
+ .withExpiration(new Date(System.currentTimeMillis() + 1000L * second));
+ URL url = client.generatePresignedUrl(generatePresignedUrlRequest);
+ return url.toString();
+ }
+
+ /**
+ * 获取当前桶权限类型
+ *
+ * @return 当前桶权限类型code
+ */
+ public AccessPolicyType getAccessPolicy() {
+ return AccessPolicyType.getByType(properties.getAccessPolicy());
+ }
+
+
private static String getPolicy(String bucketName, PolicyType policyType) {
StringBuilder builder = new StringBuilder();
builder.append("{\n\"Statement\": [\n{\n\"Action\": [\n");
diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/enumd/AccessPolicyType.java b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/enumd/AccessPolicyType.java
new file mode 100644
index 00000000..140f67a9
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/enumd/AccessPolicyType.java
@@ -0,0 +1,55 @@
+package com.ruoyi.common.oss.enumd;
+
+import com.amazonaws.services.s3.model.CannedAccessControlList;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 桶访问策略配置
+ *
+ * @author 陈賝
+ */
+@Getter
+@AllArgsConstructor
+public enum AccessPolicyType {
+
+ /**
+ * private
+ */
+ PRIVATE("0", CannedAccessControlList.Private, PolicyType.WRITE),
+
+ /**
+ * public
+ */
+ PUBLIC("1", CannedAccessControlList.PublicRead, PolicyType.READ),
+
+ /**
+ * custom
+ */
+ CUSTOM("2",CannedAccessControlList.PublicRead, PolicyType.READ);
+
+ /**
+ * 桶 权限类型
+ */
+ private final String type;
+
+ /**
+ * 文件对象 权限类型
+ */
+ private final CannedAccessControlList acl;
+
+ /**
+ * 桶策略类型
+ */
+ private final PolicyType policyType;
+
+ public static AccessPolicyType getByType(String type) {
+ for (AccessPolicyType value : values()) {
+ if (value.getType().equals(type)) {
+ return value;
+ }
+ }
+ throw new RuntimeException("'type' not found By " + type);
+ }
+
+}
diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/properties/OssProperties.java b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/properties/OssProperties.java
index 78b62ab4..16cd27be 100644
--- a/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/properties/OssProperties.java
+++ b/ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/properties/OssProperties.java
@@ -50,4 +50,10 @@ public class OssProperties {
*/
private String isHttps;
+ /**
+ * 桶权限类型(0private 1public 2custom)
+ */
+ private String accessPolicy;
+
+
}
diff --git a/ruoyi-modules/ruoyi-gen/src/main/resources/spy.properties b/ruoyi-modules/ruoyi-gen/src/main/resources/spy.properties
index bee2392d..abbd8931 100644
--- a/ruoyi-modules/ruoyi-gen/src/main/resources/spy.properties
+++ b/ruoyi-modules/ruoyi-gen/src/main/resources/spy.properties
@@ -24,3 +24,5 @@ outagedetection=true
outagedetectioninterval=2
# 是否过滤 Log
filter=true
+# 过滤 Log 时所排除的 sql 关键字,以逗号分隔
+exclude=SELECT 1
diff --git a/ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/SampleService.java b/ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/SampleService.java
index 20afa2e6..cc3c4d48 100644
--- a/ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/SampleService.java
+++ b/ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/SampleService.java
@@ -39,7 +39,6 @@ public class SampleService {
for (int i = 0; i < 5; i++) {
XxlJobHelper.log("beat at:" + i);
- TimeUnit.SECONDS.sleep(2);
}
// default success
}
diff --git a/ruoyi-modules/ruoyi-job/src/main/resources/spy.properties b/ruoyi-modules/ruoyi-job/src/main/resources/spy.properties
new file mode 100644
index 00000000..abbd8931
--- /dev/null
+++ b/ruoyi-modules/ruoyi-job/src/main/resources/spy.properties
@@ -0,0 +1,28 @@
+# 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
+# SQL语句打印时间格式
+databaseDialectTimestampFormat=yyyy-MM-dd HH:mm:ss
+# 实际驱动可多个
+#driverlist=org.h2.Driver
+# 是否开启慢SQL记录
+outagedetection=true
+# 慢SQL记录标准 2 秒
+outagedetectioninterval=2
+# 是否过滤 Log
+filter=true
+# 过滤 Log 时所排除的 sql 关键字,以逗号分隔
+exclude=SELECT 1
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/controller/SysOssController.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/controller/SysOssController.java
index 4c443021..f5e4d7d7 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/controller/SysOssController.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/controller/SysOssController.java
@@ -2,20 +2,15 @@ package com.ruoyi.resource.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
-import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.http.HttpException;
-import cn.hutool.http.HttpUtil;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
-import com.ruoyi.common.core.utils.file.FileUtils;
import com.ruoyi.common.core.validate.QueryGroup;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.mybatis.core.page.PageQuery;
import com.ruoyi.common.mybatis.core.page.TableDataInfo;
-import com.ruoyi.resource.domain.SysOss;
import com.ruoyi.resource.domain.bo.SysOssBo;
import com.ruoyi.resource.domain.vo.SysOssVo;
import com.ruoyi.resource.service.ISysOssService;
@@ -79,7 +74,7 @@ public class SysOssController extends BaseController {
if (ObjectUtil.isNull(file)) {
throw new ServiceException("上传文件不能为空");
}
- SysOss oss = iSysOssService.upload(file);
+ SysOssVo oss = iSysOssService.upload(file);
Map map = new HashMap<>(2);
map.put("url", oss.getUrl());
map.put("fileName", oss.getOriginalName());
@@ -95,23 +90,7 @@ public class SysOssController extends BaseController {
@SaCheckPermission("system:oss:download")
@GetMapping("/download/{ossId}")
public void download(@PathVariable Long ossId, HttpServletResponse response) throws IOException {
- SysOssVo sysOss = iSysOssService.getById(ossId);
- if (ObjectUtil.isNull(sysOss)) {
- throw new ServiceException("文件数据不存在!");
- }
- FileUtils.setAttachmentResponseHeader(response, sysOss.getOriginalName());
- response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE + "; charset=UTF-8");
- long data;
- try {
- data = HttpUtil.download(sysOss.getUrl(), response.getOutputStream(), false);
- } catch (HttpException e) {
- if (e.getMessage().contains("403")) {
- throw new ServiceException("无读取权限, 请在对应的OSS开启'公有读'权限!");
- } else {
- throw new ServiceException(e.getMessage());
- }
- }
- response.setContentLength(Convert.toInt(data));
+ iSysOssService.download(ossId, response);
}
/**
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/SysOssConfig.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/SysOssConfig.java
index 869648c2..28a4ca23 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/SysOssConfig.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/SysOssConfig.java
@@ -83,4 +83,8 @@ public class SysOssConfig extends BaseEntity {
*/
private String remark;
+ /**
+ * 桶权限类型(0private 1public 2custom)
+ */
+ private String accessPolicy;
}
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/bo/SysOssConfigBo.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/bo/SysOssConfigBo.java
index 39f491cf..744b55bb 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/bo/SysOssConfigBo.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/bo/SysOssConfigBo.java
@@ -98,4 +98,11 @@ public class SysOssConfigBo extends BaseEntity {
*/
private String remark;
+ /**
+ * 桶权限类型(0private 1public 2custom)
+ */
+ @NotBlank(message = "桶权限类型不能为空", groups = {AddGroup.class, EditGroup.class})
+ private String accessPolicy;
+
+
}
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/vo/SysOssConfigVo.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/vo/SysOssConfigVo.java
index de5297b9..16501c15 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/vo/SysOssConfigVo.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/domain/vo/SysOssConfigVo.java
@@ -80,4 +80,10 @@ public class SysOssConfigVo {
*/
private String remark;
+ /**
+ * 桶权限类型(0private 1public 2custom)
+ */
+ private String accessPolicy;
+
+
}
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/ISysOssService.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/ISysOssService.java
index cbac3e15..4e613379 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/ISysOssService.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/ISysOssService.java
@@ -2,11 +2,12 @@ package com.ruoyi.resource.service;
import com.ruoyi.common.mybatis.core.page.PageQuery;
import com.ruoyi.common.mybatis.core.page.TableDataInfo;
-import com.ruoyi.resource.domain.SysOss;
import com.ruoyi.resource.domain.bo.SysOssBo;
import com.ruoyi.resource.domain.vo.SysOssVo;
import org.springframework.web.multipart.MultipartFile;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
import java.util.Collection;
import java.util.List;
@@ -23,7 +24,9 @@ public interface ISysOssService {
SysOssVo getById(Long ossId);
- SysOss upload(MultipartFile file);
+ SysOssVo upload(MultipartFile file);
+
+ void download(Long ossId, HttpServletResponse response) throws IOException;
Boolean deleteWithValidByIds(Collection ids, Boolean isValid);
diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/impl/SysOssServiceImpl.java b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/impl/SysOssServiceImpl.java
index b655ae7a..54bd1e61 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/impl/SysOssServiceImpl.java
+++ b/ruoyi-modules/ruoyi-resource/src/main/java/com/ruoyi/resource/service/impl/SysOssServiceImpl.java
@@ -1,17 +1,21 @@
package com.ruoyi.resource.service.impl;
+import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.constant.CacheNames;
import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.BeanCopyUtils;
import com.ruoyi.common.core.utils.SpringUtils;
import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.file.FileUtils;
import com.ruoyi.common.mybatis.core.page.PageQuery;
import com.ruoyi.common.mybatis.core.page.TableDataInfo;
import com.ruoyi.common.oss.core.OssClient;
import com.ruoyi.common.oss.entity.UploadResult;
+import com.ruoyi.common.oss.enumd.AccessPolicyType;
import com.ruoyi.common.oss.factory.OssFactory;
import com.ruoyi.resource.domain.SysOss;
import com.ruoyi.resource.domain.bo.SysOssBo;
@@ -20,14 +24,18 @@ import com.ruoyi.resource.mapper.SysOssMapper;
import com.ruoyi.resource.service.ISysOssService;
import lombok.RequiredArgsConstructor;
import org.springframework.cache.annotation.Cacheable;
+import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
+import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
+import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* 文件上传 服务层实现
@@ -44,6 +52,8 @@ public class SysOssServiceImpl implements ISysOssService {
public TableDataInfo queryPageList(SysOssBo bo, PageQuery pageQuery) {
LambdaQueryWrapper lqw = buildQueryWrapper(bo);
Page result = baseMapper.selectVoPage(pageQuery.build(), lqw);
+ List filterResult = result.getRecords().stream().map(this::matchingUrl).collect(Collectors.toList());
+ result.setRecords(filterResult);
return TableDataInfo.build(result);
}
@@ -51,9 +61,9 @@ public class SysOssServiceImpl implements ISysOssService {
public List listByIds(Collection ossIds) {
List list = new ArrayList<>();
for (Long id : ossIds) {
- SysOssVo vo = SpringUtils.getAopProxy(this).getById(id);
+ SysOssVo vo = getById(id);
if (ObjectUtil.isNotNull(vo)) {
- list.add(vo);
+ list.add(this.matchingUrl(vo));
}
}
return list;
@@ -80,13 +90,31 @@ public class SysOssServiceImpl implements ISysOssService {
}
@Override
- public SysOss upload(MultipartFile file) {
+ public void download(Long ossId, HttpServletResponse response) throws IOException {
+ SysOssVo sysOss = SpringUtils.getAopProxy(this).getById(ossId);
+ if (ObjectUtil.isNull(sysOss)) {
+ throw new ServiceException("文件数据不存在!");
+ }
+ FileUtils.setAttachmentResponseHeader(response, sysOss.getOriginalName());
+ response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE + "; charset=UTF-8");
+ OssClient storage = OssFactory.instance();
+ try(InputStream inputStream = storage.getObjectContent(sysOss.getUrl())) {
+ int available = inputStream.available();
+ IoUtil.copy(inputStream, response.getOutputStream(), available);
+ response.setContentLength(available);
+ } catch (Exception e) {
+ throw new ServiceException(e.getMessage());
+ }
+ }
+
+ @Override
+ public SysOssVo upload(MultipartFile file) {
String originalfileName = file.getOriginalFilename();
String suffix = StringUtils.substring(originalfileName, originalfileName.lastIndexOf("."), originalfileName.length());
OssClient storage = OssFactory.instance();
UploadResult uploadResult;
try {
- uploadResult = storage.uploadSuffix(file.getBytes(), suffix, file.getContentType());
+ uploadResult = storage.uploadSuffix(file.getInputStream(), suffix, file.getContentType());
} catch (IOException e) {
throw new ServiceException(e.getMessage());
}
@@ -98,7 +126,9 @@ public class SysOssServiceImpl implements ISysOssService {
oss.setOriginalName(originalfileName);
oss.setService(storage.getConfigKey());
baseMapper.insert(oss);
- return oss;
+ SysOssVo sysOssVo = new SysOssVo();
+ BeanCopyUtils.copy(oss, sysOssVo);
+ return this.matchingUrl(sysOssVo);
}
@Override
@@ -114,4 +144,19 @@ public class SysOssServiceImpl implements ISysOssService {
return baseMapper.deleteBatchIds(ids) > 0;
}
+ /**
+ * 匹配Url
+ *
+ * @param oss OSS对象
+ * @return oss 匹配Url的OSS对象
+ */
+ private SysOssVo matchingUrl(SysOssVo oss) {
+ OssClient storage = OssFactory.instance(oss.getService());
+ // 仅修改桶类型为 private 的URL,临时URL时长为120s
+ if (AccessPolicyType.PRIVATE == storage.getAccessPolicy()) {
+ oss.setUrl(storage.getPrivateUrl(oss.getFileName(), 120));
+ }
+ return oss;
+ }
+
}
diff --git a/ruoyi-modules/ruoyi-resource/src/main/resources/spy.properties b/ruoyi-modules/ruoyi-resource/src/main/resources/spy.properties
index bee2392d..abbd8931 100644
--- a/ruoyi-modules/ruoyi-resource/src/main/resources/spy.properties
+++ b/ruoyi-modules/ruoyi-resource/src/main/resources/spy.properties
@@ -24,3 +24,5 @@ outagedetection=true
outagedetectioninterval=2
# 是否过滤 Log
filter=true
+# 过滤 Log 时所排除的 sql 关键字,以逗号分隔
+exclude=SELECT 1
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/spy.properties b/ruoyi-modules/ruoyi-system/src/main/resources/spy.properties
index bee2392d..abbd8931 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/spy.properties
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/spy.properties
@@ -24,3 +24,5 @@ outagedetection=true
outagedetectioninterval=2
# 是否过滤 Log
filter=true
+# 过滤 Log 时所排除的 sql 关键字,以逗号分隔
+exclude=SELECT 1
diff --git a/ruoyi-ui/src/views/system/oss/config.vue b/ruoyi-ui/src/views/system/oss/config.vue
index 54ad98cb..0120641d 100644
--- a/ruoyi-ui/src/views/system/oss/config.vue
+++ b/ruoyi-ui/src/views/system/oss/config.vue
@@ -80,6 +80,13 @@
+
+
+ private
+ public
+ custom
+
+
{{dict.label}}
+
+
+ private
+ public
+ custom
+
+
@@ -259,6 +273,9 @@ export default {
trigger: "blur",
},
],
+ accessPolicy:[
+ { required: true, message: "accessPolicy不能为空", trigger: "blur" }
+ ]
},
};
},
@@ -292,6 +309,7 @@ export default {
endpoint: undefined,
domain: undefined,
isHttps: "N",
+ accessPolicy: "1",
region: undefined,
status: "1",
remark: undefined,
diff --git a/ruoyi-visual/ruoyi-seata-server/pom.xml b/ruoyi-visual/ruoyi-seata-server/pom.xml
index b4d6b3a2..2bacbfd2 100644
--- a/ruoyi-visual/ruoyi-seata-server/pom.xml
+++ b/ruoyi-visual/ruoyi-seata-server/pom.xml
@@ -29,6 +29,7 @@
1.5.2
1.72
+ 1.2.12
diff --git a/sql/ry-cloud.sql b/sql/ry-cloud.sql
index 9577f000..75662cf2 100644
--- a/sql/ry-cloud.sql
+++ b/sql/ry-cloud.sql
@@ -616,6 +616,7 @@ create table sys_oss_config (
domain varchar(255) default '' comment '自定义域名',
is_https char(1) default 'N' comment '是否https(Y=是,N=否)',
region varchar(255) default '' comment '域',
+ access_policy char(1) not null default '1' comment '桶权限类型(0=private 1=public 2=custom)',
status char(1) default '1' comment '状态(0=正常,1=停用)',
ext1 varchar(255) default '' comment '扩展字段',
create_by varchar(64) default '' comment '创建者',
@@ -626,11 +627,11 @@ create table sys_oss_config (
primary key (oss_config_id)
) engine=innodb comment='对象存储配置表';
-insert into sys_oss_config values (1, 'minio', 'ruoyi', 'ruoyi123', 'ruoyi', '', '127.0.0.1:9000', '','N', '', '0', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
-insert into sys_oss_config values (2, 'qiniu', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 's3-cn-north-1.qiniucs.com', '','N', '', '1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
-insert into sys_oss_config values (3, 'aliyun', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 'oss-cn-beijing.aliyuncs.com', '','N', '', '1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
-insert into sys_oss_config values (4, 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1250000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
-insert into sys_oss_config values (5, 'image', 'ruoyi', 'ruoyi123', 'ruoyi', 'image', '127.0.0.1:9000', '','N', '', '1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
+insert into sys_oss_config values (1, 'minio', 'ruoyi', 'ruoyi123', 'ruoyi', '', '127.0.0.1:9000', '','N', '', '1' ,'0', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
+insert into sys_oss_config values (2, 'qiniu', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 's3-cn-north-1.qiniucs.com', '','N', '', '1' ,'1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
+insert into sys_oss_config values (3, 'aliyun', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi', '', 'oss-cn-beijing.aliyuncs.com', '','N', '', '1' ,'1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
+insert into sys_oss_config values (4, 'qcloud', 'XXXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXX', 'ruoyi-1250000000', '', 'cos.ap-beijing.myqcloud.com', '','N', 'ap-beijing', '1' ,'1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
+insert into sys_oss_config values (5, 'image', 'ruoyi', 'ruoyi123', 'ruoyi', 'image', '127.0.0.1:9000', '','N', '', '1' ,'1', '', 'admin', sysdate(), 'admin', sysdate(), NULL);
-- ----------------------------
-- 18、代码生成业务表