Skip to content

Latest commit

 

History

History
93 lines (58 loc) · 3.11 KB

51.Monitoring-and-Management-over-HTTP.md

File metadata and controls

93 lines (58 loc) · 3.11 KB

51. Monitoring and Management over HTTP

如果您正在开发 Web 应用程序,则 Spring Boot Actuator 会自动配置所有已启用的端点以通过 HTTP 公开。默认约定是使用前缀为 /actuator 的端点的 id 作为 URL 路径。例如,health 被暴露为 /actuator/health

☀️ Spring MVC,Spring WebFlux 和 Jersey 本身支持 Actuator。


51.1 Customizing the Management Endpoint Paths

有时,自定义管理端点的前缀很有用。例如,您的应用程序可能已将 /actuator 用于其他目的。您可以使用 management.endpoints.web.base-path 属性更改管理端点的前缀,如以下示例所示:

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

前面的 application.properties 示例将端点从 /actuator/{id} 更改为 /manage/{id}(例如,/manage/info )。

☀️ 除非已将管理端口配置为使用其他 HTTP 端口公开端点,否则 management.endpoints.web.base-pathserver.servlet.context-path 相关。如果配置了 management.server.port ,则 management.endpoints.web.base-pathmanagement.server.servlet.context-path 相关。


51.2 Customizing the Management Server Port

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

您可以设置 management.server.port 属性以更改 HTTP 端口,如以下示例所示:

management.server.port=8081

51.3 Configuring Management-specific SSL

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

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

或者,主服务器和管理服务器都可以使用 SSL 但具有不同的密钥库,如下所示:

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

51.4 Customizing the Management Server Address

您可以通过设置 management.server.address 属性来自定义管理端点可用的地址。如果您只想在内部或面向操作的网络上侦听或仅侦听来自 localhost 的连接,那么这样做会非常有用。

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

以下示例 application.properties 不允许远程管理连接:

management.server.port=8081
management.server.address=127.0.0.1

51.5 Disabling HTTP Endpoints

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

management.server.port=-1