spring boot 添加admin監(jiān)控的方法
一、Spring Boot Admin簡介
spring boot admin github開源地址:https://github.com/codecentric/spring-boot-admin
它主要的作用是在Spring Boot Actuator的基礎上提供簡潔的WEB UI展示。
二、項目使用:
1、搭建一個maven web項目
2、pom依賴配置
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-server-ui-login</artifactId> </dependency>
在pom.xml中添加上以上配置
admin服務端:spring-boot-admin-server、spring-boot-admin-server-ui
admin客戶端:spring-boot-admin-starter-client (加上該項能監(jiān)控服務端自身的運行狀態(tài),其他項目只需要引入client就可以引入監(jiān)控)
安全:spring-boot-starter-security
登錄驗證:spring-boot-admin-server-ui-login (也可以自行添加簡單的登錄界面)
3、application.yml
info: app: name: imard version: v1.0.0 [html] view plain copy logging: file: "d:/logs/imard/boot.log" management: context-path: "/actuator" spring: application: name: "@pom.artifactId@" boot: admin: url: http://www.test.com:8080 profiles: active: - secure --- spring: profiles: insecure management: security: enabled: false security: basic: enabled: false --- spring: profiles: secure boot: admin: username: "${security.user.name}" password: "${security.user.password}" client: metadata: user.name: "${security.user.name}" user.password: "${security.user.password}" security: user: name: user password: pass
其中:spring.boot.admin.url聲明admin服務端地址(其他項目會通過這個url主動的注冊到admin監(jiān)控中)
info配置app的基本信息
www.test.com 在本機hosts中做了映射
4、Application.java
@Configuration @EnableAutoConfiguration @EnableAdminServer public class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
@EnableAdminServer 添加上該注解啟動監(jiān)控
5、SecurityConfig
@Profile("secure") @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.formLogin().loginPage("/login.html").loginProcessingUrl("/login").permitAll(); http.logout().logoutUrl("/logout"); http.csrf().disable(); http.authorizeRequests() .antMatchers("/login.html", "/**/*.css", "/img/**", "/third-party/**").permitAll(); http.authorizeRequests().antMatchers("/api/**").permitAll().antMatchers("/**") .authenticated(); // Enable so that the clients can authenticate via HTTP basic for registering http.httpBasic(); } }
使用Spring Security配置一個基本的安全策略
6、監(jiān)管管理
配置完1~5個步驟以后,使用application啟動監(jiān)控程序。
通過http://www.test.com:8080/login.html監(jiān)控登錄界面進行安全驗證后,如下圖:
進入details就可以看到具體的項目監(jiān)控信息(Details、Log、Metrics、Environment、Logging、JMX、Threads、Audit、Trace、Heapdump)
總結
以上所述是小編給大家介紹的spring boot 添加admin監(jiān)控的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
springboot?全局異常處理和統(tǒng)一響應對象的處理方式
這篇文章主要介紹了springboot?全局異常處理和統(tǒng)一響應對象,主要包括SpringBoot 默認的異常處理機制和SpringBoot 全局異常處理,本文給大家介紹的非常詳細,需要的朋友可以參考下2022-06-06java中public class與class的區(qū)別詳解
以下是對java中public class與class的區(qū)別進行了分析介紹,需要的朋友可以過來參考下2013-07-07Mockito mock Kotlin Object類方法報錯解決方法
這篇文章主要介紹了Mockito mock Kotlin Object類方法報錯解決方法,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下2021-09-09JAVA技術實現(xiàn)上傳下載文件到FTP服務器(完整)
這篇文章主要介紹了JAVA技術實現(xiàn)上傳下載文件到FTP服務器(完整),本文使用 Apache Jakarta Commons Net(commons-net-3.3.jar) 基于FileZilla Server服務器實現(xiàn)FTP服務器上文件的上傳/下載/刪除等操作,需要的朋友可以參考下2015-07-07SpringBoot+Vue跨域配置(CORS)問題得解決過程
在使用 Spring Boot 和 Vue 開發(fā)前后端分離的項目時,跨域資源共享(CORS)問題是一個常見的挑戰(zhàn),接下來,我將分享我是如何一步步解決這個問題的,包括中間的一些試錯過程,希望能夠幫助到正在經歷類似問題的你2024-08-08