From 6dc791c34f7e38df941a3d1826d953752aca819a Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期四, 22 四月 2021 15:42:00 +0800
Subject: [PATCH] !21 同步dev分支 Merge pull request !21 from 疯狂的狮子li/dev
---
sql/ry_20210210.sql | 3 +
ruoyi-admin/src/main/resources/logback.xml | 14 ++++
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java | 16 ++++-
ruoyi-ui/src/views/monitor/admin/index.vue | 26 ++++++++
pom.xml | 17 +++++
ruoyi-admin/src/main/resources/application.yml | 28 +++++++++
ruoyi-common/pom.xml | 9 +++
README.md | 1
ruoyi-admin/src/main/resources/application-dev.yml | 4
ruoyi-framework/src/main/java/com/ruoyi/framework/config/AdminServerConfig.java | 24 ++++++++
10 files changed, 137 insertions(+), 5 deletions(-)
diff --git a/README.md b/README.md
index 5610cdd..0624abe 100644
--- a/README.md
+++ b/README.md
@@ -33,6 +33,7 @@
* swagger 淇敼涓� knife4j
* 闆嗘垚 Hutool 5.X 骞堕噸鍐橰uoYi閮ㄥ垎鍔熻兘
* 闆嗘垚 Feign 鎺ュ彛鍖栫鐞� Http 璇锋眰(濡備笁鏂硅姹� 鏀粯,鐭俊,鎺ㄩ�佺瓑)
+* 闆嗘垚 spring-boot-admin 鍏ㄦ柟浣嶇洃鎺�
* 鍗囩骇MybatisPlus 3.4.2
* 澧炲姞demo妯″潡绀轰緥(缁欎笉浼氬鍔犳ā鍧楃殑灏忎紮浼村仛鍙傝��)
* 鍚屾鍗囩骇 3.4.0
diff --git a/pom.xml b/pom.xml
index ef756ab..c709651 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,6 +31,7 @@
<hutool.version>5.5.8</hutool.version>
<feign.version>2.2.6.RELEASE</feign.version>
<feign-okhttp.version>11.0</feign-okhttp.version>
+ <spring-boot-admin.version>2.3.1</spring-boot-admin.version>
</properties>
<!-- 渚濊禆澹版槑 -->
@@ -147,6 +148,22 @@
<version>${feign-okhttp.version}</version>
</dependency>
+ <dependency>
+ <groupId>de.codecentric</groupId>
+ <artifactId>spring-boot-admin-starter-server</artifactId>
+ <version>${spring-boot-admin.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>de.codecentric</groupId>
+ <artifactId>spring-boot-admin-starter-client</artifactId>
+ <version>${spring-boot-admin.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
+ </dependency>
+
<!-- 瀹氭椂浠诲姟-->
<dependency>
<groupId>com.ruoyi</groupId>
diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml
index 6d476c9..65f8805 100644
--- a/ruoyi-admin/src/main/resources/application-dev.yml
+++ b/ruoyi-admin/src/main/resources/application-dev.yml
@@ -43,8 +43,8 @@
allow:
url-pattern: /druid/*
# 鎺у埗鍙扮鐞嗙敤鎴峰悕鍜屽瘑鐮�
- login-username:
- login-password:
+ login-username: ruoyi
+ login-password: 123456
filter:
stat:
enabled: true
diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml
index 3bc738d..4ed20c8 100644
--- a/ruoyi-admin/src/main/resources/application.yml
+++ b/ruoyi-admin/src/main/resources/application.yml
@@ -57,6 +57,7 @@
level:
com.ruoyi: @logging.level@
org.springframework: warn
+ config: classpath:logback.xml
# Spring閰嶇疆
spring:
@@ -78,6 +79,33 @@
restart:
# 鐑儴缃插紑鍏�
enabled: true
+ application:
+ name: ruoyi-vue-plus
+ boot:
+ admin:
+ # Spring Boot Admin Client 瀹㈡埛绔殑鐩稿叧閰嶇疆
+ client:
+ # 璁剧疆 Spring Boot Admin Server 鍦板潃
+ url: http://localhost:${server.port}${spring.boot.admin.context-path}
+ instance:
+ prefer-ip: true # 娉ㄥ唽瀹炰緥鏃讹紝浼樺厛浣跨敤 IP
+# username: ruoyi
+# password: 123456
+ # Spring Boot Admin Server 鏈嶅姟绔殑鐩稿叧閰嶇疆
+ context-path: /admin # 閰嶇疆 Spring
+
+# Actuator 鐩戞帶绔偣鐨勯厤缃」
+management:
+ endpoints:
+ web:
+ # Actuator 鎻愪緵鐨� API 鎺ュ彛鐨勬牴鐩綍銆傞粯璁や负 /actuator
+ base-path: /actuator
+ exposure:
+ # 闇�瑕佸紑鏀剧殑绔偣銆傞粯璁ゅ�煎彧鎵撳紑 health 鍜� info 涓や釜绔偣銆傞�氳繃璁剧疆 * 锛屽彲浠ュ紑鏀炬墍鏈夌鐐广��
+ include: '*'
+ endpoint:
+ logfile:
+ external-file: ./logs/sys-console.log
# token閰嶇疆
token:
diff --git a/ruoyi-admin/src/main/resources/logback.xml b/ruoyi-admin/src/main/resources/logback.xml
index f27bff9..d407df4 100644
--- a/ruoyi-admin/src/main/resources/logback.xml
+++ b/ruoyi-admin/src/main/resources/logback.xml
@@ -12,6 +12,19 @@
<charset>utf-8</charset>
</encoder>
</appender>
+
+ <!-- 鎺у埗鍙拌緭鍑� -->
+ <appender name="file_console" class="ch.qos.logback.core.FileAppender">
+ <file>${log.path}/sys-console.log</file>
+ <encoder>
+ <pattern>${log.pattern}</pattern>
+ <charset>utf-8</charset>
+ </encoder>
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <!-- 杩囨护鐨勭骇鍒� -->
+ <level>INFO</level>
+ </filter>
+ </appender>
<!-- 绯荤粺鏃ュ織杈撳嚭 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
@@ -85,6 +98,7 @@
<root level="info">
<appender-ref ref="file_info" />
<appender-ref ref="file_error" />
+ <appender-ref ref="file_console" />
</root>
<!--绯荤粺鐢ㄦ埛鎿嶄綔鏃ュ織-->
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 2b04147..62de11a 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -128,6 +128,15 @@
<artifactId>feign-okhttp</artifactId>
</dependency>
+ <dependency>
+ <groupId>de.codecentric</groupId>
+ <artifactId>spring-boot-admin-starter-server</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>de.codecentric</groupId>
+ <artifactId>spring-boot-admin-starter-client</artifactId>
+ </dependency>
+
</dependencies>
</project>
\ No newline at end of file
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/AdminServerConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/AdminServerConfig.java
new file mode 100644
index 0000000..49b5411
--- /dev/null
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/AdminServerConfig.java
@@ -0,0 +1,24 @@
+package com.ruoyi.framework.config;
+
+import de.codecentric.boot.admin.server.config.EnableAdminServer;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.boot.autoconfigure.task.TaskExecutionAutoConfiguration;
+import org.springframework.boot.task.TaskExecutorBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+
+import java.util.concurrent.Executor;
+
+@Configuration
+@EnableAdminServer
+public class AdminServerConfig {
+
+ @Lazy
+ @Bean(name = TaskExecutionAutoConfiguration.APPLICATION_TASK_EXECUTOR_BEAN_NAME)
+ @ConditionalOnMissingBean(Executor.class)
+ public ThreadPoolTaskExecutor applicationTaskExecutor(TaskExecutorBuilder builder) {
+ return builder.build();
+ }
+}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
index 385439e..4822c91 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -1,5 +1,9 @@
package com.ruoyi.framework.config;
+import com.ruoyi.framework.security.filter.JwtAuthenticationTokenFilter;
+import com.ruoyi.framework.security.handle.AuthenticationEntryPointImpl;
+import com.ruoyi.framework.security.handle.LogoutSuccessHandlerImpl;
+import de.codecentric.boot.admin.server.config.AdminServerProperties;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.http.HttpMethod;
@@ -14,9 +18,6 @@
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.security.web.authentication.logout.LogoutFilter;
import org.springframework.web.filter.CorsFilter;
-import com.ruoyi.framework.security.filter.JwtAuthenticationTokenFilter;
-import com.ruoyi.framework.security.handle.AuthenticationEntryPointImpl;
-import com.ruoyi.framework.security.handle.LogoutSuccessHandlerImpl;
/**
* spring security閰嶇疆
@@ -55,6 +56,9 @@
*/
@Autowired
private CorsFilter corsFilter;
+
+ @Autowired
+ private AdminServerProperties adminServerProperties;
/**
* 瑙e喅 鏃犳硶鐩存帴娉ㄥ叆 AuthenticationManager
@@ -113,6 +117,12 @@
.antMatchers("/webjars/**").anonymous()
.antMatchers("/*/api-docs").anonymous()
.antMatchers("/druid/**").anonymous()
+ // Spring Boot Admin Server 鐨勫畨鍏ㄩ厤缃�
+ .antMatchers(adminServerProperties.getContextPath()).anonymous()
+ .antMatchers(adminServerProperties.getContextPath() + "/**").anonymous()
+ // Spring Boot Actuator 鐨勫畨鍏ㄩ厤缃�
+ .antMatchers("/actuator").anonymous()
+ .antMatchers("/actuator/**").anonymous()
// 闄や笂闈㈠鐨勬墍鏈夎姹傚叏閮ㄩ渶瑕侀壌鏉冭璇�
.anyRequest().authenticated()
.and()
diff --git a/ruoyi-ui/src/views/monitor/admin/index.vue b/ruoyi-ui/src/views/monitor/admin/index.vue
new file mode 100644
index 0000000..f1d48b0
--- /dev/null
+++ b/ruoyi-ui/src/views/monitor/admin/index.vue
@@ -0,0 +1,26 @@
+<template>
+ <div v-loading="loading" :style="'height:'+ height">
+ <iframe :src="src" frameborder="no" style="width: 100%;height: 100%" scrolling="auto" />
+ </div>
+</template>
+<script>
+export default {
+ name: "Admin",
+ data() {
+ return {
+ src: process.env.VUE_APP_BASE_API + "/admin",
+ height: document.documentElement.clientHeight - 94.5 + "px;",
+ loading: true
+ };
+ },
+ mounted: function() {
+ setTimeout(() => {
+ this.loading = false;
+ }, 230);
+ const that = this;
+ window.onresize = function temp() {
+ that.height = document.documentElement.clientHeight - 94.5 + "px;";
+ };
+ }
+};
+</script>
diff --git a/sql/ry_20210210.sql b/sql/ry_20210210.sql
index a6b882d..8b721ab 100644
--- a/sql/ry_20210210.sql
+++ b/sql/ry_20210210.sql
@@ -178,6 +178,9 @@
insert into sys_menu values('114', '琛ㄥ崟鏋勫缓', '3', '1', 'build', 'tool/build/index', 1, 0, 'C', '0', '0', 'tool:build:list', 'build', 'admin', sysdate(), '', null, '琛ㄥ崟鏋勫缓鑿滃崟');
insert into sys_menu values('115', '浠g爜鐢熸垚', '3', '2', 'gen', 'tool/gen/index', 1, 0, 'C', '0', '0', 'tool:gen:list', 'code', 'admin', sysdate(), '', null, '浠g爜鐢熸垚鑿滃崟');
insert into sys_menu values('116', '绯荤粺鎺ュ彛', '3', '3', 'swagger', 'tool/swagger/index', 1, 0, 'C', '0', '0', 'tool:swagger:list', 'swagger', 'admin', sysdate(), '', null, '绯荤粺鎺ュ彛鑿滃崟');
+-- springboot-admin鐩戞帶
+insert into sys_menu values('117', 'Admin鐩戞帶', '2', '5', 'Admin', 'monitor/admin/index', 1, 0, 'C', '0', '0', 'monitor:admin:list', 'dashboard', 'admin', sysdate(), '', null, 'Admin鐩戞帶鑿滃崟');
+
-- 涓夌骇鑿滃崟
insert into sys_menu values('500', '鎿嶄綔鏃ュ織', '108', '1', 'operlog', 'monitor/operlog/index', 1, 0, 'C', '0', '0', 'monitor:operlog:list', 'form', 'admin', sysdate(), '', null, '鎿嶄綔鏃ュ織鑿滃崟');
insert into sys_menu values('501', '鐧诲綍鏃ュ織', '108', '2', 'logininfor', 'monitor/logininfor/index', 1, 0, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', 'admin', sysdate(), '', null, '鐧诲綍鏃ュ織鑿滃崟');
--
Gitblit v1.9.3