【Actuator】基于SpringBoot3.3.x版本④可观测性增强
- 摘要
- 本地开发环境说明
- 先快速完整一个微服务的搭建
-
- pom.xml依赖
- 启动类
- 修改tomcat默认端口
- 自定义健康监控的端点
- 集成prometheus
- 使用Micrometer注解
- Controller
- 运行Prometheus
- 总结
摘要
可观测性由CNCF
组织提出,在云原生中提到一个词Observerbility
,随着云原生的崛起,可观测性成了云原生时代的必备能力。加上谷歌、阿里、腾讯等互联网大厂的参与,可观测性逐渐从幕后走进寻常百姓家。
那么,什么叫可观测性呢?用相对严谨的话来说,可观测性指的是一种能力,是通过检查其输出来衡量系统内部状态的能⼒。这些输出体现内部系统状态的能力越强,可观测性也就越好。
由此可以看出,可观测性的核心价值就是排查故障。搞IT
的都知道,这个世界上不存在没有Bug
的系统,无论软件架构设计的多么合理,代码质量多么高,只是降低出现问题的概率或者是提高解决问题的效率,系统的运维显得越来越重要,尤其是微服务分布式架构的时代,系统的复杂度越来越高,那么可观测性就是运维的重中之重了。
可观测性涉及最重要的三个概念,分别是日志、指标和链路追踪。那么,我们依然本着"最新"的原则,带着大家一起学习Spring Boot
体系的可观测性。
本地开发环境说明
开发用到的主要框架、工具版本如下
开发依赖 | 版本 |
---|---|
Spring Boot | 3.3.4 |
Spring Actuator | 3.3.4 |
micrometer | 1.13.4 |
JDK | 21 |
IntelliJ IDEA | 2024.2.3 |
先快速完整一个微服务的搭建
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">
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.3.4</version>
<relativePath/>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.wen3.framework-demo</groupId>
<artifactId>wen3-framework-actuator-demo</artifactId>
<version>1.0.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
启动类
package com.wen3.actuator.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot