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
相關文章
相關標籤/搜索