文章目录
一. Actuator监控应用
Actuator是spring boot的一个附加功能,可帮助你在应用程序生产环境时监视和管理应用程序。可以使用HTTP的各种请求来监管,审计,收集应用的运行情况.特别对于微服务管理十分有意义.缺点:没有可视化界面。
1.1 Maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
1.2 yml配置
###通过下面的配置启用所有的监控端点,默认情况下,这些端点是禁用的;
management:
endpoints:
web:
exposure:
include: "*"
###接口 相当在配置文件中,配置相关info开头的配置信息
info:
hszsd: 合石招商贷
name: 何金荣
1.3 Actuator访问路径
通过actuator/+端点名就可以获取相应的信息。
路径 | 作用 |
---|---|
/actuator/beans | 显示应用程序中所有Spring bean的完整列表。 |
/actuator/configprops | 显示所有配置信息。 |
/actuator/env | 陈列所有的环境变量。 |
/actuator/mappings | 显示所有@RequestMapping的url整理列表。 |
/actuator/health | 显示应用程序运行状况信息 up表示成功 down失败 |
/actuator/info | 查看自定义应用信息 |
1.4 启动
http://localhost:8080/actuator/info
可以访问到自己定义的字段属性。
二. Admin-UI分布式微服务监控中心
Admin-UI基于actuator实现能够返回界面展示监控信息
2.1 Admin-UI-Server
2.1.1 maven依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
<spring-boot-admin.version>2.1.3</spring-boot-admin.version>
</properties>
<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>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
2.1.2 yml配置
server:
port: 8800
spring:
application:
name: admin-ui-server
2.1.3 启动类配置
@Configuration
@EnableAutoConfiguration
@EnableAdminServer
public class Springboot2008AdminUiServerApplication {
public static void main(String[] args) {
SpringApplication.run(Springboot2008AdminUiServerApplication.class, args);
}
}
2.2 Admin-UI-Client
2.2.1 maven依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
<spring-boot-admin.version>2.1.3</spring-boot-admin.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
</dependency>
<dependency>
<groupId>org.jolokia</groupId>
<artifactId>jolokia-core</artifactId>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1</version>
</dependency>
2.2.2 yml配置
spring: ##配置client 注册到admin ui 平台
boot:
admin:
client:
url: http://localhost:8800
application:
name: admin-ui-client
server:
port: 8801
### 开放所有的监控接口监控权限
management:
endpoints:
web:
exposure:
include: "*"
endpoint:
health:
show-details: always
2.2.3 启动类配置
@SpringBootApplication
public class Springboot2008AdminUiClientApplication {
public static void main(String[] args) {
SpringApplication.run(Springboot2008AdminUiClientApplication.class, args);
}
}
三. 源码地址
https://gitee.com/hejr.cn.com/SpringBoot2.0_2019/tree/master/springboot2_008_admin_ui_client
https://gitee.com/hejr.cn.com/SpringBoot2.0_2019/tree/master/springboot2_008_admin_ui_server