Spring Boot 参考指南(经过HTTP监控和管理)

51. 经过HTTP监控和管理

若是你正在开发一个web应用程序,Spring Boot Actuator会自动配置经过HTTP公开的全部已启用的端点,默认约定是使用带有/actuator前缀的端点id做为URL路径,例如,health公开为/actuator/healthweb

Actuator由Spring MVC、Spring WebFlux和Jersey支持

51.1 自定义管理端点路径

有时,为管理端点定制前缀是有用的,例如,你的应用程序可能已经将/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-path是相对于 server.servlet.context-path的,若是 management.server.port被配置, management.endpoints.web.base-path是相对于 management.server.servlet.context-path的。

51.2 自定义管理服务器端口

使用默认的HTTP端口公开管理端点是基于云的部署的明智选择,可是,若是你的应用程序运行在你本身的数据中心中,你可能倾向于使用不一样的HTTP端口来公开端点。你能够设置management.server.port属性改变HTTP端口,以下例所示:app

management.server.port=8081

51.3 配置管理特定SSL

当配置为使用自定义端口时,管理服务器还可使用各类management.server.ssl.*属性配置本身的SSL,例如,这样作可让管理服务器经过HTTP可用,而主应用程序使用HTTPS,以下面的属性设置所示:spa

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 自定义管理服务器地址

你能够经过设置management.server.address属性来定制管理端点可用的地址,若是你但愿只监听内部网络或面向操做系统的网络,或者只监听来自localhost的链接,那么这样作是颇有用的。code

只有当端口与主服务器端口不一样时,才能监听不一样的地址

下面的示例application.properties不容许远程管理链接:server

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

51.5 禁用HTTP端点

若是不但愿经过HTTP公开端点,则能够将管理端口设置为-1,以下例所示:ssl

management.server.port=-1
相关文章
相关标签/搜索