- * 启动类 + * Spring Boot Admin Client 启动类 *
* * @author yangkai.shen - * @date Created in 2018-10-8 14:16 + * @date Created in 2022-08-17 16:42 */ @SpringBootApplication -public class SpringBootDemoAdminClientApplication { +public class AdminClientApplication { public static void main(String[] args) { - SpringApplication.run(SpringBootDemoAdminClientApplication.class, args); + SpringApplication.run(AdminClientApplication.class, args); } } diff --git a/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/IndexController.java b/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/IndexController.java index 98f68ac..e47302a 100644 --- a/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/IndexController.java +++ b/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/IndexController.java @@ -5,16 +5,16 @@ import org.springframework.web.bind.annotation.RestController; /** *- * 首页 + * 测试路由-首页 *
* * @author yangkai.shen - * @date Created in 2018-10-08 14:15 + * @date Created in 2022-08-17 16:43 */ @RestController public class IndexController { @GetMapping(value = {"", "/"}) public String index() { - return "This is a Spring Boot Admin Client."; + return "This is a Spring Boot Admin Client Demo."; } } diff --git a/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/TestController.java b/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/TestController.java new file mode 100644 index 0000000..d7cc0fe --- /dev/null +++ b/demo-admin/admin-client/src/main/java/com/xkcoding/admin/client/controller/TestController.java @@ -0,0 +1,30 @@ +package com.xkcoding.admin.client.controller; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Random; + +/** + * 测试路由-Just for testing + * + * @author 一珩(沈扬凯 yk.shen@tuya.com) + * @date 2022-08-17 16:51 + */ +@Slf4j +@RestController +@RequestMapping("/test") +public class TestController { + + @GetMapping + public String test() { + int range = new Random().nextInt(1, 11); + for (int i = 0; i < range; i++) { + log.info("#TestController#test: info log total: {}, now is {}", range, (i + 1)); + } + return "Just for testing"; + } + +} diff --git a/demo-admin/admin-client/src/main/resources/application.yml b/demo-admin/admin-client/src/main/resources/application.yml index 69a1f9a..bf9937a 100644 --- a/demo-admin/admin-client/src/main/resources/application.yml +++ b/demo-admin/admin-client/src/main/resources/application.yml @@ -2,24 +2,28 @@ server: port: 8080 servlet: context-path: /demo + spring: application: # Spring Boot Admin展示的客户端项目名,不设置,会使用自动生成的随机id name: spring-boot-demo-admin-client + security: + user: + name: xkcoding + password: 123456 boot: admin: client: # Spring Boot Admin 服务端地址 url: "http://localhost:8000/" + username: ${spring.security.user.name} + password: ${spring.security.user.password} instance: + service-host-type: ip metadata: # 客户端端点信息的安全认证信息 user.name: ${spring.security.user.name} user.password: ${spring.security.user.password} - security: - user: - name: xkcoding - password: 123456 management: endpoint: health: @@ -30,3 +34,12 @@ management: exposure: # 设置端点暴露的哪些内容,默认["health","info"],设置"*"代表暴露所有可访问的端点 include: "*" + info: + env: + enabled: true +# 增加日志配置,为了展示 Spring Boot Admin 的观察在线日志的能力 +logging: + file: + name: logs/${spring.application.name}.log + pattern: + file: "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(%5p) %clr(${PID}){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n%wEx" diff --git a/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/AdminClientApplicationTests.java b/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/AdminClientApplicationTests.java new file mode 100644 index 0000000..02d980d --- /dev/null +++ b/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/AdminClientApplicationTests.java @@ -0,0 +1,13 @@ +package com.xkcoding.admin.client; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class AdminClientApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/SpringBootDemoAdminClientApplicationTests.java b/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/SpringBootDemoAdminClientApplicationTests.java deleted file mode 100644 index 283f40a..0000000 --- a/demo-admin/admin-client/src/test/java/com/xkcoding/admin/client/SpringBootDemoAdminClientApplicationTests.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xkcoding.admin.client; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; - -@RunWith(SpringRunner.class) -@SpringBootTest -public class SpringBootDemoAdminClientApplicationTests { - - @Test - public void contextLoads() { - } - -} diff --git a/demo-admin/admin-server/.gitignore b/demo-admin/admin-server/.gitignore deleted file mode 100644 index 82eca33..0000000 --- a/demo-admin/admin-server/.gitignore +++ /dev/null @@ -1,25 +0,0 @@ -/target/ -!.mvn/wrapper/maven-wrapper.jar - -### STS ### -.apt_generated -.classpath -.factorypath -.project -.settings -.springBeans -.sts4-cache - -### IntelliJ IDEA ### -.idea -*.iws -*.iml -*.ipr - -### NetBeans ### -/nbproject/private/ -/build/ -/nbbuild/ -/dist/ -/nbdist/ -/.nb-gradle/ \ No newline at end of file diff --git a/demo-admin/admin-server/README.md b/demo-admin/admin-server/README.md index f89cd31..4a2fb4a 100644 --- a/demo-admin/admin-server/README.md +++ b/demo-admin/admin-server/README.md @@ -1,90 +1,67 @@ -# spring-boot-demo-admin-server +## spring-boot-demo-admin-server > 本 demo 主要演示了如何搭建一个 Spring Boot Admin 的服务端项目,可视化展示自己客户端项目的运行状态。 -## pom.xml +### 1.开发步骤 -```xml - -- * 启动类 - *
- * - * @author yangkai.shen - * @date Created in 2018-10-08 14:08 - */ @EnableAdminServer @SpringBootApplication -public class SpringBootDemoAdminServerApplication { +public class AdminServerApplication { - public static void main(String[] args) { - SpringApplication.run(SpringBootDemoAdminServerApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(AdminServerApplication.class, args); + } } ``` -## application.yml +#### 1.3.修改配置文件 ```yaml server: port: 8000 +spring: + application: + name: spring-boot-demo-admin-server + boot: + admin: + instance-auth: + enabled: true + default-user-name: xkcoding + default-password: 123456 + ui: + external-views: + - label: "xkcoding 🚀" + url: https://xkcoding.com + order: 2000 + ``` +### 2.测试 + +1. 启动 `AdminServerApplication`,然后打开 `http://localhost:8000` +2. 再启动 `AdminClientApplication`,等待启动成功之后,观察是否成功注册上服务端 diff --git a/demo-admin/admin-server/pom.xml b/demo-admin/admin-server/pom.xml index 0e9f7d6..8ac7218 100644 --- a/demo-admin/admin-server/pom.xml +++ b/demo-admin/admin-server/pom.xml @@ -16,9 +16,7 @@- * 启动类 + * Spring Boot Admin Server 启动类 *
* * @author yangkai.shen - * @date Created in 2018-10-08 14:08 + * @date Created in 2022-08-17 16:41 */ @EnableAdminServer @SpringBootApplication -public class SpringBootDemoAdminServerApplication { +public class AdminServerApplication { public static void main(String[] args) { - SpringApplication.run(SpringBootDemoAdminServerApplication.class, args); + SpringApplication.run(AdminServerApplication.class, args); } } diff --git a/demo-admin/admin-server/src/main/resources/application.yml b/demo-admin/admin-server/src/main/resources/application.yml index 00cff46..0192741 100644 --- a/demo-admin/admin-server/src/main/resources/application.yml +++ b/demo-admin/admin-server/src/main/resources/application.yml @@ -1,2 +1,16 @@ server: port: 8000 +spring: + application: + name: spring-boot-demo-admin-server + boot: + admin: + instance-auth: + enabled: true + default-user-name: xkcoding + default-password: 123456 + ui: + external-views: + - label: "xkcoding 🚀" + url: https://xkcoding.com + order: 2000 diff --git a/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/AdminServerApplicationTests.java b/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/AdminServerApplicationTests.java new file mode 100644 index 0000000..85a308a --- /dev/null +++ b/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/AdminServerApplicationTests.java @@ -0,0 +1,13 @@ +package com.xkcoding.admin.server; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class AdminServerApplicationTests { + + @Test + void contextLoads() { + } + +} diff --git a/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/SpringBootDemoAdminServerApplicationTests.java b/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/SpringBootDemoAdminServerApplicationTests.java deleted file mode 100644 index d70d4f8..0000000 --- a/demo-admin/admin-server/src/test/java/com/xkcoding/admin/server/SpringBootDemoAdminServerApplicationTests.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.xkcoding.admin.server; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; - -@RunWith(SpringRunner.class) -@SpringBootTest -public class SpringBootDemoAdminServerApplicationTests { - - @Test - public void contextLoads() { - } - -} diff --git a/demo-admin/pom.xml b/demo-admin/pom.xml index eccaa84..43be5e9 100644 --- a/demo-admin/pom.xml +++ b/demo-admin/pom.xml @@ -7,18 +7,21 @@