乐途乐途
主页
  • 计算机基础

    • TCP/IP
    • Linux
    • HTTP
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C
    • C++
    • Java SE
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • Maven 入门
    • Maven 进阶
    • MyBatis
    • Spring
    • Spring MVC
  • Java

    • Spring Boot
    • Spring Cloud
    • Spring Cloud Alibaba
    • Spring Security
    • Spring AI
    • Spring Batch
    • Kafka
    • Java 设计模式
  • 缓存

    • Redis
  • 搜索引擎

    • Elasticsearch
  • 分布式协调

    • ZooKeeper
联系
阿里云
主页
  • 计算机基础

    • TCP/IP
    • Linux
    • HTTP
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C
    • C++
    • Java SE
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • Maven 入门
    • Maven 进阶
    • MyBatis
    • Spring
    • Spring MVC
  • Java

    • Spring Boot
    • Spring Cloud
    • Spring Cloud Alibaba
    • Spring Security
    • Spring AI
    • Spring Batch
    • Kafka
    • Java 设计模式
  • 缓存

    • Redis
  • 搜索引擎

    • Elasticsearch
  • 分布式协调

    • ZooKeeper
联系
阿里云
  • 学习路径
  • 第1章 Spring Boot 概述

    • 章节导读:Spring Boot概述与核心理念
    • Spring Boot是什么
    • Spring Boot与Spring Framework的关系
    • 约定优于配置
  • 第2章 快速入门与第一个应用

    • 章节导读:快速入门与第一个应用
    • SpringApplication
    • 第一个Spring Boot应用
  • 第3章 起步依赖与版本管理

    • 章节导读:起步依赖与版本管理
    • 起步依赖
    • BOM版本管理
  • 第4章 自动配置原理

    • 章节导读:自动配置原理
    • 自动配置原理
    • AutoConfigurationImportSelector
    • 自动配置报告
  • 第5章 核心注解

    • 章节导读:核心注解
    • @SpringBootApplication
    • @EnableAutoConfiguration
    • @ConditionalOnClass
    • @ConditionalOnMissingBean
    • @ConditionalOnBean
    • @ConditionalOnProperty
  • 第6章 外部化配置与属性绑定

    • 章节导读:外部化配置与属性绑定
    • 外部化配置
    • @ConfigurationProperties
    • @Value
    • 配置属性优先级
  • 第7章 Profile 与环境切换

    • 章节导读:Profile与环境切换
    • @Profile
    • 多环境配置文件
  • 第8章 内嵌服务器与部署

    • 章节导读:内嵌服务器与部署
    • 内嵌服务器
    • Fat Jar
  • 第9章 Actuator 与监控

    • 章节导读:Actuator与监控
    • Actuator Health
    • Actuator Info
    • Actuator Metrics
    • 自定义Endpoint
    • 自定义HealthIndicator
  • 第10章 开发工具与最佳实践

    • 章节导读:开发工具与最佳实践
    • Banner自定义
    • 热部署

"白歌对运维主管说:'上线前我需要确认三件事:系统是否健康?性能指标是否正常?当前运行的是哪个版本?'Spring Boot Actuator 把这三件事变成了一个 HTTP 请求。'这一章,你将掌握生产级监控的完整工具链,并学会扩展自定义能力。"

章节导读:Actuator 与监控

本章定位

本章解决的核心问题:Spring Boot 应用在生产环境中如何以标准化的方式暴露健康状态、运行时指标和自定义运维信息,使运维团队能够实时观测系统、快速定位故障,并执行业务级管理操作。

学习路线图

学习顺序说明:先掌握 Actuator 三大原生端点——health(系统是否可用)、metrics(运行得怎么样)、info(当前版本身份是什么);然后进入自定义扩展——实现 HealthIndicator 将业务级检查接入健康体系,使用 @Endpoint 创建自定义运维操作接口。由浅入深,从使用到扩展。

文件关系说明

文件一句话角色
Actuator_health.md健康检查端点,聚合应用及数据库、磁盘等组件的 UP/DOWN 状态。
Actuator_metrics.md指标端点,通过 Micrometer 暴露 JVM、HTTP、数据源等运行时计量数据。
Actuator_info.md信息端点,暴露构建版本、Git 提交信息和自定义业务属性。
自定义 HealthIndicator.md实现 HealthIndicator 接口,将数据库连通性、Redis 状态等业务检查纳入健康体系。
自定义 Endpoint.md使用 @Endpoint + @ReadOperation / @WriteOperation 创建自定义运维端点。

知识图谱

核心逻辑:Actuator 是 Spring Boot 的"运维窗口"。health 端点聚合所有健康检查器(包括自定义的),以 UP/DOWN 判定系统生死;metrics 端点通过 Micrometer 门面采集运行时指标,对接 Prometheus 等监控系统;info 端点回答"我是谁"的元信息。三大原生端点覆盖通用运维需求,而 HealthIndicator 和 @Endpoint 则提供无限扩展能力,让业务运维操作也融入标准框架。

与上下章的衔接

上一章回顾:你已经掌握了内嵌服务器和 Fat JAR 的部署能力,应用可以 java -jar 独立运行。本章解决的是"运行起来之后如何观测"——端口分开了(8080 业务 + 8081 管理),监控端点也暴露了,运维团队可以 7×24 小时知道系统死活。

下一章预告:开发效率如何再提升?生产 Banner 如何管理?下一章「开发工具与最佳实践」将介绍 spring-boot-devtools 的热部署机制,以及 Banner 自定义等企业级开发技巧,让你的开发-测试-部署闭环更加顺畅。

下一页
Actuator Health