整合

健康信息

健康信息可以检查应用的运行状态,它经常被监控软件用来提醒人们生产环境是否存在问题。health端点暴露的默认信息取决于端点是如何被访问的。对于一个非安全,未认证的连接只返回一个简单的’status’信息。对于一个安全或认证过的连接其他详细信息也会展示
Spring Boot包含很多自动配置的HealthIndicators,你也可以写自己的。

自动配置的HealthIndicators

Spring Boot在合适的时候会自动配置以下HealthIndicators:
Spring Boot Actuator_spring boot_05

  • 下表显示了内置状态的默认状态映射:
    Spring Boot Actuator_restful_06

  • 让我们配置一下health节点,并重启应用
    Spring Boot Actuator_git_07

  • 可看到对于磁盘的监控信息
    Spring Boot Actuator_原力计划_08

应用信息

应用信息会暴露所有InfoContributor beans收集的各种信息,Spring Boot包含很多自动配置的InfoContributors,你也可以编写自己的实现。

自动配置的InfoContributors

Spring Boot会在合适的时候自动配置以下InfoContributors:
Spring Boot Actuator_git_09

注 使用.defaults.enabled属性可禁用以上所有InfoContributors。

自定义应用info信息

通过设置Spring属性info.*,你可以定义info端点暴露的数据。所有在info关键字下的Environment属性都将被自动暴露,例如,你可以将以下配置添加到application.properties:

info.app.encoding=UTF-8
info.app.java.source=1.8
info.app.java.target=1.8

注 你可以在构建时扩展info属性,而不是硬编码这些值。假设使用Maven,你可以按以下配置重写示例:

info.app.encoding=@project.build.sourceEncoding@
info.app.java.source=@java.version@
info.app.java.target=@java.version@

Git提交信息

info端点的另一个有用特性是,在项目构建完成后发布git源码仓库的状态信息。如果GitProperties bean可用,Spring Boot将暴露git.branch,和git.commit.time属性。

注 如果classpath根目录存在git.properties文件,Spring Boot将自动配置GitProperties bean。查看Generate git information获取更多详细信息。

使用.git.mode属性可展示全部git信息(比如git.properties全部内容):

.git.mode=full

构建信息

如果BuildProperties bean存在,info端点也会发布你的构建信息。

注 如果classpath下存在META-INF/build-info.properties文件,Spring Boot将自动构建BuildProperties bean。Maven和Gradle都能产生该文件

  • 配置info
    Spring Boot Actuator_spring boot_10

  • 启动观察输出信息Spring Boot Actuator_spring_11

  • SpringBoot支持很多端点,除了默认显示的几个,还可以激活暴露所有端点
    Spring Boot Actuator_spring_12
    Spring Boot Actuator_spring boot_13

  • 如果只想暴露某个端点也是可以的
    Spring Boot Actuator_git_14

  • 查看JVM最大内存
    Spring Boot Actuator_原力计划_15

3 Beans

Bean 端点提供有关应用程序 bean 的信息。

获取 Beans

  • /actuator/beans GET 请求
    Spring Boot Actuator_spring boot_16
    响应的结构:
    Spring Boot Actuator_spring boot_17
    结果中可见 SpringBoot 默认的数据源:
    Spring Boot Actuator_spring boot_18