【Spring Cloud Alibaba】Boot Admin 端点监控

【Spring Cloud Alibaba】Sentinel 服务熔断和限流

1、Spring Boot Admin

其实前面我们已经使用了很多 Boot Admin 的案例了,就是项目中使用的 spring-boot-starter-actuator 依赖提供的端点监控,但是它返回的是一个 json 字符串,不方便我们查看使用,所以这里引入了一个新的概念,spring boot admin,通过图形可视化的形式,将各项指标、应用详细情况展示出来,前提是各个应用中使用端点放开了提供数据的配置,例如以下配置,使用 * 就放开了所有配置

management.server.port=9099
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

实际开发中尽量不要使用 * 通配,不安全,因为暴露了所有的信息

2、构建 Boot Admin 监控端

创建 spring-cloud-alibaba-boot-admin 模块,核心依赖为 spring-boot-admin-starter-server,其他的和之前的一样

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-server</artifactId>
            <version>${spring-boot-admin.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

修改 application.properties 配置文件

server.port=8088
spring.application.name=spring-cloud-alibaba-boot-admin

management.server.port=9098
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

# Nacos注册信息
spring.cloud.nacos.discovery.server-addr=localhost:8848
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos
spring.cloud.nacos.discovery.namespace=sandbox-configuration

启动类增加注解

@EnableDiscoveryClient
@EnableAdminServer

然后启动应用,到这里就构建完成了,是不是特别简单呢,接下来启动应用,访问

http://localhost:8088/

能查到当前应用信息就说明配置 OK 了

点击头部的应用墙,然后点击应用,查看当前应用的详细配置

3、构建 Boot Admin 客户端

通常情况下,客户端都是实际的应用,这里就创建一个新的服务,作为模拟实际开发的客户端

创建 spring-cloud-alibaba-boot-admin-client 模块,核心依赖从 server 变成了 client,spring-boot-admin-starter-client 注意一下细节

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-client</artifactId>
            <version>${spring-boot-admin.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

修改 application.properties 配置文件,核心配置为最后一句增加了 boot admin 的监控地址

server.port=8089
spring.application.name=spring-cloud-alibaba-boot-admin-client

management.server.port=9099
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

# Nacos注册信息
spring.cloud.nacos.discovery.server-addr=localhost:8848
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos
spring.cloud.nacos.discovery.namespace=sandbox-configuration

# Boot Admin监控
spring.boot.admin.client.url=http://localhost:8088

然后启动客户端的服务刷新一下监控面板


我们增加的服务已经显示在应用墙了

同样可以查看详细配置了

到此,Spring Boot Admin 端点监控配置完成了

微信公众号

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tellsea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值