Spring Cloud集成Admin Server

spring cloud集成spring boot admin server

在这篇文章Springboot集成Actuator和SpringbootAdminServer监控,我们学到了在spring boot应用中集成spring boot admin server来UI化显示spring boot actuatorendpoint数据。

那如果是spring cloud应用呢?如何将集成spring boot admin server来界面化显示应用的指标数据呢?

card-admin-server集成spring boot admin server

  1. 添加依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
  1. 创建启动类,注意机上注解@EnableAdminServer
@EnableAdminServer
@SpringBootApplication(scanBasePackages = "com.github.mg0324")
public class StartupApplication {
    public static void main(String[] args) {
        SpringApplication.run(StartupApplication.class,args);
    }
}
  1. 添加安全配置类
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        SavedRequestAwareAuthenticationSuccessHandler successHandler
            = new SavedRequestAwareAuthenticationSuccessHandler();
        successHandler.setTargetUrlParameter("redirectTo");
        successHandler.setDefaultTargetUrl("/");

        http.authorizeRequests()
            .antMatchers("/assets/**").permitAll()
            .antMatchers("/login").permitAll()
            .anyRequest().authenticated().and()
            .formLogin().loginPage("/login")
            .successHandler(successHandler).and()
            .logout().logoutUrl("/logout").and()
            .httpBasic().and()
            .csrf()
            .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())
            .ignoringAntMatchers(
                "/instances",
                "/actuator/**"
             );
    }
}
  1. 设置配置
server:
    port: 8100
    servlet:
        context-path: /
spring:
    application:
        name: card-admin-server
    security:
        user:
            name: admin
            password: 123456

eureka:
    instance:
        leaseRenewalIntervalInSeconds: 10
        health-check-url-path: /actuator/health
        metadata-map:
            user.name: admin
            user.password: 123456
    client:
        registryFetchIntervalSeconds: 10
        serviceUrl:
            #defaultZone: http://192.168.3.26:8761/eureka/
            defaultZone: http://127.0.0.1:8761/eureka/

management:
    endpoint:
        health:
            show-details: always
    endpoints:
        web:
            exposure:
                include: '*'
  1. 启动访问

总结

  1. springboot应用界面显示的是程序中使用的中间件状态;spring cloud应用显示的是微服务相关的组件的状态。
  2. 都是基于springboot actuator的endpoint数据做界面展示的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值