您好,登錄后才能下訂單哦!
前言
Spring Boot Admin是一個Web應用,用于管理和監視Spring Boot應用程序的運行狀態。每個Spring Boot應用程序都被視為客戶端并注冊到管理服務器。背后的數據采集是由Spring Boot Actuator端點提供。
集成
注意一定要版本對應,否則會出現意想不到的問題,建議使用Srping Boot Admin 2.0+以上版本,可以多語言切換。
父項目
pom.xml引入:
<modules> <module>admin-server</module> <module>admin-client</module></modules><parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.2.RELEASE</version> <relativePath/></parent><dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> </dependency></dependencies>
監控服務端
pom.xml引入:
<artifactId>admin-server</artifactId><dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> <version>2.2.1</version> </dependency> <!--登錄認證--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <!--掉線發送郵件通知--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency></dependencies>
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
啟動類:
/** * 系統監控 * 爪哇筆記: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); } }}
監控客戶端
pom.xml引入:
<artifactId>admin-client</artifactId><dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> <version>2.2.1</version> </dependency></dependencies>
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
監控界面
不得不說,2.X 版本還是很美觀大氣上檔次的,并且監控告警功能齊全,
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。