中外商贸网站建设平台,网站 空间 服务器 免费,wordpress云落主题,欧美风格网站源码1.简介
Spring Boot Admin为项目常用的监控方式#xff0c;可以动态的监控服务是否运行和运行的参数#xff0c;如类的调用情况、流量等。其中分为server与client#xff1a;
server#xff1a; 提供展示UI与监控服务。client#xff1a;加入server#xff0c;被监控的…
1.简介
Spring Boot Admin为项目常用的监控方式可以动态的监控服务是否运行和运行的参数如类的调用情况、流量等。其中分为server与client
server 提供展示UI与监控服务。client加入server被监控的项目。
同时在监控的过程中spring-boot-starter-actuator也被经常提及actuator使用后会在被项目内部打上探针提供一系列的监控api接口如堆内存、栈内存等。下文数据为actuator提供。
2.server端
2.1 新建springboot项目
这里不多说常用方法新建springboot项目。
2.2 修改pom文件
由于使用了spring cloud alibaba生态所以这里将nacos包也加入了请自行选择。 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactIdoptionaltrue/optional/dependencydependencygroupIdde.codecentric/groupIdartifactIdspring-boot-admin-starter-server/artifactIdversion2.2.0/version/dependency!-- SpringCloud Alibaba Nacos --dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId/dependency!-- SpringCloud Alibaba Nacos Config --dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-config/artifactId/dependency/dependencies2.3 修改yml文件
server端暂无其他配置。
server:port: 8008servlet:context-path: /monitor
spring:application:name: monitor-resource # Eureka页面显示2.4 修改
加入EnableAdminServer注解。
SpringBootApplication
EnableAdminServer
public class MonitorApplication {public static void main(String[] args) {SpringApplication.run(MonitorApplication.class, args);}}访问ip:端口/context-path就可以访问了。页面如下。
3.client端
3.1 修改pom文件 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId/dependencydependencygroupIdde.codecentric/groupIdartifactIdspring-boot-admin-starter-client/artifactIdversion2.2.0/version/dependency3.2 修改yml文件
在有context-path情况下需要加入特殊配置否则报错。本文为nacos中的配置请参考。
server:port: 8008servlet:context-path: /monitor
spring:application:name: monitor-resource boot:admin:client:api-path:url: http://127.0.0.1:8008/monitor # 这里为server地址如果有context-path需要加入instance:prefer-ip: true # 使用ip注册进来management-url: /monitorcloud:nacos:discovery:# 服务注册地址server-addr: ip:8848metadata: # 如果有context-path需要加上否者报错management:context-path: ${server.servlet.context-path}/actuatorconfig:# 配置中心地址server-addr: ip:8848# 配置文件格式file-extension: yml
management: # actuator配置endpoint:health:show-details: alwaysendpoints:enabled-by-default: trueweb:exposure:include: *启动后即可加入server服务页面展示如下
4.Security
4.1 修改pom文件。 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-security/artifactId/dependency4.2 修改application.xml文件
加入登录账号密码。
spring:security:user:name: adminpassword: 1qazWSX4.3 新增登入登出配置
这里需要配置登入登出的页面地址同其他博文相同配置。
Configuration
public class SecuritySecureConfig extends WebSecurityConfigurerAdapter {private final String adminContextPath;public SecuritySecureConfig(AdminServerProperties adminServerProperties) {this.adminContextPath adminServerProperties.getContextPath();}Overrideprotected void configure(HttpSecurity http) throws Exception {// formatter:offSavedRequestAwareAuthenticationSuccessHandler successHandler new SavedRequestAwareAuthenticationSuccessHandler();successHandler.setTargetUrlParameter( redirectTo );http.authorizeRequests().antMatchers( adminContextPath /assets/** ).permitAll().antMatchers( adminContextPath /login ).permitAll().anyRequest().authenticated().and().formLogin().loginPage( adminContextPath /login ).successHandler( successHandler ).and().logout().logoutUrl( adminContextPath /logout ).and().httpBasic().and().csrf().disable();}
}再次登录可以看到需要账号登录。