前言
Spring Boot Admin是一個Web應(yīng)用,用于管理和監(jiān)視Spring Boot應(yīng)用程序的運行狀態(tài)。每個Spring Boot應(yīng)用程序都被視為客戶端并注冊到管理服務(wù)器。背后的數(shù)據(jù)采集是由Spring Boot Actuator端點提供。
創(chuàng)新互聯(lián)公司是一家專業(yè)提供寧波企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、成都做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為寧波眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進行中。
集成
注意一定要版本對應(yīng),否則會出現(xiàn)意想不到的問題,建議使用Srping Boot Admin 2.0+以上版本,可以多語言切換。
父項目
pom.xml引入:
admin-server admin-client org.springframework.boot spring-boot-starter-parent 2.2.2.RELEASE org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-jetty
監(jiān)控服務(wù)端
pom.xml引入:
admin-server de.codecentric spring-boot-admin-starter-server 2.2.1 org.springframework.boot spring-boot-starter-security org.springframework.boot spring-boot-starter-mail
application.properties配置文件:
https://blog.52itstyle.vipserver.port=9000spring.application.name=SpringBootAdminspring.security.user.name=adminspring.security.user.password=adminspring.boot.admin.monitor.status-interval = 10000spring.boot.admin.monitor.info-interval = 10000spring.mail.host = smtp.163.comspring.mail.username = 13188888888@163.comspring.mail.password = 2020spring.boot.admin.notify.mail.from = 13188888888@163.comspring.boot.admin.notify.mail.to = 88888888@qq.com
啟動類:
/** * 系統(tǒng)監(jiān)控 * 爪哇筆記:https://blog.52itstyle.vip */@Configuration@EnableAutoConfiguration@EnableAdminServerpublic class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Configuration public static class SecuritySecureConfig extends WebSecurityConfigurerAdapter { private final AdminServerProperties adminServer; public SecuritySecureConfig(AdminServerProperties adminServer) { this.adminServer = adminServer; } @Override protected void configure(HttpSecurity http) throws Exception { SavedRequestAwareAuthenticationSuccessHandler successHandler = new SavedRequestAwareAuthenticationSuccessHandler(); successHandler.setTargetUrlParameter("redirectTo"); successHandler.setDefaultTargetUrl(this.adminServer.path("/")); http.authorizeRequests() .antMatchers(this.adminServer.path("/assets/**")).permitAll() .antMatchers(this.adminServer.path("/login")).permitAll() .anyRequest().authenticated() .and() .formLogin().loginPage(this.adminServer.path("/login")).successHandler(successHandler).and() .logout().logoutUrl(this.adminServer.path("/logout")).and() .httpBasic().and() .csrf() .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()) .ignoringRequestMatchers( new AntPathRequestMatcher(this.adminServer.path("/instances"), HttpMethod.POST.toString()), new AntPathRequestMatcher(this.adminServer.path("/instances/*"), HttpMethod.DELETE.toString()), new AntPathRequestMatcher(this.adminServer.path("/actuator/**")) ) .and() .rememberMe().key(UUID.randomUUID().toString()).tokenValiditySeconds(1209600); } }}
監(jiān)控客戶端
pom.xml引入:
admin-client de.codecentric spring-boot-admin-starter-client 2.2.1
application.properties配置文件:
https://blog.52itstyle.vipspring.boot.admin.client.instance.name = 007spring.boot.admin.client.url= http://localhost:9000management.endpoints.web.exposure.include=*spring.boot.admin.client.username = adminspring.boot.admin.client.password = adminspring.boot.admin.client.period = 10000spring.boot.admin.client.connect-timeout = 5000spring.boot.admin.client.read-timeout = 5000spring.boot.admin.client.instance.service-url = http://localhost:8080
監(jiān)控界面
不得不說,2.X 版本還是很美觀大氣上檔次的,并且監(jiān)控告警功能齊全,