温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样添加一个Spring Boot Admin监控

发布时间:2021-12-02 17:11:27 来源:亿速云 阅读:147 作者:柒染 栏目:大数据

这期内容当中小编将会给大家带来有关怎样添加一个Spring Boot Admin监控,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

 

0. 前言

下面搭建在Spring Cloud 微服务中另一个重要的项目 - Spring boot admin.

 

1. Spring Boot Admin 介绍

怎样添加一个Spring Boot Admin监控

Spring Boot Admin 用来监控基于Spring Boot的应用,在Spring Boot Actuator的基础上提供了简洁的可视化Web UI。Spring Boot Admin 提供了以下功能:

  • 显示应用的健康状态

  • 显示应用的细节内容:JVM和内存信息,micrometer信息, 数据源信息,缓存信息等

  • 显示 编译版本

  • 查看和下载日志

  • 查看jvm参数和环境变量值

  • 查看Spring Boot项目配置

  • 显示 thread dump

  • 显示 http-traces

……

等一系列内容。

 

2. 创建一个 Spring Boot Admin项目

那么,我们就来创建一个Spring Boot Admin 项目吧。

 

2.1 创建 Spring Boot Admin 服务端

在manager 目录下,创建一个 monitor目录,并在monitor目录下创建一个pom.xml 文件,添加以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>

   <artifactId>monitor</artifactId>
   <version>${revision}</version>
   <packaging>jar</packaging>
   <parent>
       <artifactId>manager</artifactId>
       <groupId>club.attachie</groupId>
       <version>${revision}</version>
   </parent>

</project>
 

在 manager/pom.xml 注册我们新建的项目模块:

<modules>
   <module>gateway</module>
   <module>monitor</module>
</modules>
 

在 monitor 创建如下目录:

.
├── pom.xml
└── src
   └── main
       ├── java
       └── resources
 

在根目录的pom.xml 添加 Spring Boot Admin 依赖:

先添加spring-boot-admin版本号变量:

<spring-boot-admin.version>2.2.3</spring-boot-admin.version>
 

并在dependencyManagement > dependencies 下添加:

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

在monitor/pom.xml文件中添加:

<dependencies>
   <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
       <groupId>de.codecentric</groupId>
       <artifactId>spring-boot-admin-starter-server</artifactId>
   </dependency>
</dependencies>
 

运行

mvn clean install

检查并刷mvn引用缓存。

创建MonitorApplication类:

package club.attachie.nature.monitor;

import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@EnableAdminServer
public class MonitorApplication {
   public static void main(String[] args) {
       SpringApplication.run(MonitorApplication.class, args);
   }
}
 

启动后能看到如下界面:

怎样添加一个Spring Boot Admin监控

 

3 与网关服务进行互通

在上一篇中,我们添加了Spring Cloud Gateway项目,到目前为止两个项目之间完全割裂没有关联。在这一节,我们在两者之间建立关联。也就是说,将gateway 项目引入Spring Admin Boot监听。

在 manager/gateway 的pom.xml 文件中加入如下引用:

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

然后修改 gateway项目的启动端口,在resources/bootstrap.yml 添加:

server:
 port: 8070
 

在 monitor中加入nacos引用:

<dependency>
   <groupId>com.alibaba.cloud</groupId>
   <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
 

修改MonitorApplication 为:

package club.attachie.nature.monitor;

import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.context.config.annotation.RefreshScope;

@SpringBootApplication
@EnableAdminServer
@RefreshScope
public class MonitorApplication {
   public static void main(String[] args) {
       SpringApplication.run(MonitorApplication.class, args);
   }
}
 

创建monitor项目的bootsrap.yml:

spring:
 application:
   name: monitor

 cloud:
     nacos:
     discovery:
       server-addr: 127.0.0.1:8848
 

关于这里的配置 在上一篇 中有个错误,应该是 discovery > server-addr,不是 config > server-addr。两者有区别,discovery表示设置nacos为服务发现中心,config表示nacos为配置中心。

启动 gateway 项目和 monitor项目查看效果, 访问 8080端口:

怎样添加一个Spring Boot Admin监控

可以看到两个应用可以被发现,如果没有设置monitor项目把nacos当做服务发现中心,将无法获取到具体在线的应用。点击 gateway 进去后可以查看到:

怎样添加一个Spring Boot Admin监控

 

我们搭建了一个Spring Boot Admin 项目作为一个监控系统。

上述就是小编为大家分享的怎样添加一个Spring Boot Admin监控了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI