此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.3.1Spring中文文档

此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Boot 3.3.1Spring中文文档

如果您正在开发 Web 应用程序,Spring Boot Actuator 会自动配置所有已启用的端点以通过 HTTP 公开。 默认约定是使用前缀为 的终结点作为 URL 路径。 例如,公开为 .id/actuatorhealth/actuator/healthSpring中文文档

执行器本机支持 Spring MVC、Spring WebFlux 和 Jersey。 如果 Jersey 和 Spring MVC 都可用,则使用 Spring MVC。
Jackson 是获取 API 文档中所述的正确 JSON 响应所必需的依赖项。
执行器本机支持 Spring MVC、Spring WebFlux 和 Jersey。 如果 Jersey 和 Spring MVC 都可用,则使用 Spring MVC。
Jackson 是获取 API 文档中所述的正确 JSON 响应所必需的依赖项。

自定义管理终结点路径

有时,自定义管理终结点的前缀很有用。 例如,应用程序可能已用于其他目的。 可以使用该属性更改管理终结点的前缀,如以下示例所示:/actuatormanagement.endpoints.web.base-pathSpring中文文档

management.endpoints.web.base-path=/manage
management:
  endpoints:
    web:
      base-path: "/manage"

前面的示例将终结点从 更改为 (例如,)。application.properties/actuator/{id}/manage/{id}/manage/infoSpring中文文档

除非管理端口已配置为使用不同的 HTTP 端口公开端点,否则相对于(对于 servlet Web 应用程序)或(对于反应式 Web 应用程序)。 如果已配置,则相对于 。management.endpoints.web.base-pathserver.servlet.context-pathspring.webflux.base-pathmanagement.server.portmanagement.endpoints.web.base-pathmanagement.server.base-path

如果要将终结点映射到其他路径,可以使用该属性。management.endpoints.web.path-mappingSpring中文文档

以下示例重新映射到:/actuator/health/healthcheckSpring中文文档

management.endpoints.web.base-path=/
management.endpoints.web.path-mapping.health=healthcheck
management:
  endpoints:
    web:
      base-path: "/"
      path-mapping:
        health: "healthcheck"
除非管理端口已配置为使用不同的 HTTP 端口公开端点,否则相对于(对于 servlet Web 应用程序)或(对于反应式 Web 应用程序)。 如果已配置,则相对于 。management.endpoints.web.base-pathserver.servlet.context-pathspring.webflux.base-pathmanagement.server.portmanagement.endpoints.web.base-pathmanagement.server.base-path

自定义管理服务器端口

使用默认 HTTP 端口公开管理终结点是基于云的部署的明智选择。 但是,如果应用程序在您自己的数据中心内运行,您可能更愿意使用不同的 HTTP 端口公开终结点。Spring中文文档

您可以设置属性来更改 HTTP 端口,如以下示例所示:management.server.portSpring中文文档

management.server.port=8081
management:
  server:
    port: 8081
在 Cloud Foundry 上,默认情况下,应用程序仅在端口 8080 上接收 HTTP 和 TCP 路由的请求。 如果要在 Cloud Foundry 上使用自定义管理端口,则需要显式设置应用程序的路由,以便将流量转发到自定义端口。
在 Cloud Foundry 上,默认情况下,应用程序仅在端口 8080 上接收 HTTP 和 TCP 路由的请求。 如果要在 Cloud Foundry 上使用自定义管理端口,则需要显式设置应用程序的路由,以便将流量转发到自定义端口。

配置特定于管理的 SSL

当配置为使用自定义端口时,还可以使用各种属性为管理服务器配置其自己的 SSL。 例如,这样做可以让管理服务器在主应用程序使用 HTTPS 时通过 HTTP 提供,如以下属性设置所示:management.server.ssl.*Spring中文文档

server.port=8443
server.ssl.enabled=true
server.ssl.key-store=classpath:store.jks
server.ssl.key-password=secret
management.server.port=8080
management.server.ssl.enabled=false
server:
  port: 8443
  ssl:
    enabled: true
    key-store: "classpath:store.jks"
    key-password: "secret"
management:
  server:
    port: 8080
    ssl:
      enabled: false

或者,主服务器和管理服务器都可以使用 SSL,但密钥存储不同,如下所示:Spring中文文档

server.port=8443
server.ssl.enabled=true
server.ssl.key-store=classpath:main.jks
server.ssl.key-password=secret
management.server.port=8080
management.server.ssl.enabled=true
management.server.ssl.key-store=classpath:management.jks
management.server.ssl.key-password=secret
server:
  port: 8443
  ssl:
    enabled: true
    key-store: "classpath:main.jks"
    key-password: "secret"
management:
  server:
    port: 8080
    ssl:
      enabled: true
      key-store: "classpath:management.jks"
      key-password: "secret"

自定义管理服务器地址

可以通过设置属性来自定义管理终结点可用的地址。 如果您只想侦听内部网络或面向操作的网络,或者只想侦听来自 的连接,则这样做会很有用。management.server.addresslocalhostSpring中文文档

仅当端口与主服务器端口不同时,才能侦听其他地址。

以下示例不允许远程管理连接:application.propertiesSpring中文文档

management.server.port=8081
management.server.address=127.0.0.1
management:
  server:
    port: 8081
    address: "127.0.0.1"
仅当端口与主服务器端口不同时,才能侦听其他地址。

禁用 HTTP 端点

如果不想通过 HTTP 公开终结点,可以将管理端口设置为 ,如以下示例所示:-1Spring中文文档

management.server.port=-1
management:
  server:
    port: -1

还可以通过使用该属性来实现此目的,如以下示例所示:management.endpoints.web.exposure.excludeSpring中文文档

management.endpoints.web.exposure.exclude=*
management:
  endpoints:
    web:
      exposure:
        exclude: "*"