使用Spring-boot-admin对Spring boot的服务进行监控

要进行监控,需要两个Project,一个是Admin Server端,负责监控Spring boot的项目,另一个是Admin Client端,是被监控的Spring boot服务。

Admin Server端

首先配置文件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> <groupId>admin</groupId>
<artifactId>admin</artifactId>
<version>1.0-SNAPSHOT</version> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
</parent> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.6.RELEASE</version>
</dependency> <dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.1.6</version>
</dependency> <!--监控-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency> <dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server-ui</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
</project>

然后写配置文件application.yml

 spring:
application:
name: admin-server
server:
port: 9090

最后补全项目的主类

 package cy;

 import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
@EnableAdminServer public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args); }
}

这时进入 http://localhost:9090/ 看到如下界面就表示第一步Server端已经完成。

使用Spring-boot-admin对Spring boot的服务进行监控

Admin Client端

在被监控的Project文件的pom.xml文件中加上下面的依赖

 <dependencies>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.1.0</version>
</dependency>
</dependencies>

配置文件分为两类,如果你配置的是application.yml

 //application.yml
server:
port: 8080
spring:
application:
name: Admin Client
boot:
admin:
client:
url: http://localhost:9090
management:
endpoints:
web:
exposure:
include: '*'

如果配置的是application.properties

 //application.properties
server.port=8080
spring.application.name=Admin Client
spring.boot.admin.client.url=http://localhost:9090
management.endpoints.web.exposure.include=*

两者的区别可以看https://www.cnblogs.com/*-/p/11306854.html

运行Client的主类,可以看到

使用Spring-boot-admin对Spring boot的服务进行监控

选择进入该项目,可以看到

使用Spring-boot-admin对Spring boot的服务进行监控

这个时候我们就可以监控到这个服务的各项指标。

文章的最后我们来解释一下这个配置文件的含义,推荐使用application.yml,这里为了方便排版使用了application.properties:

server.port=8080 就是被监控的项目所运行在的端口;

spring.application.name=Admin Client Client名称;

spring.boot.admin.client.url=http://localhost:9090 监控程序在的位置,让这两者可以找到;

management.endpoints.web.exposure.include=* 开放给监控程序的权限,这里的✳代指所有的权限。

上一篇:计算1至n中数字X出现的次数【math】


下一篇:Linux netstat命令详解