Spring Boot 參考指南(經過JMX監控和管理)

52. 經過JMX監控和管理

Java管理擴展(JMX)提供了一種監視和管理應用程序的標準機制,默認狀況下,Spring Boot將管理端點公開爲org.springframework.boot域中的JMX mbean。web

52.1 自定義MBean的名字

MBean的名稱一般是由端點的id生成的,例如,health端點公開爲org.springframework.boot:type=Endpoint,name=Healthspring

若是你的應用程序包含多個Spring ApplicationContext,你可能會發現名稱衝突,要解決這個問題,能夠設置management.endpoints.jmx.unique-names屬性爲true,這樣MBean名稱老是惟一的。服務器

你還能夠自定義在其中暴露端點的JMX域,下面的設置顯示了application.properties中的一個示例:app

management.endpoints.jmx.domain=com.example.myapp
management.endpoints.jmx.unique-names=true

52.2 禁用JMX端點

若是不但願在JMX上公開端點,您能夠設置management.endpoints.jmx.exposure.exclude屬性爲*,以下例所示:dom

management.endpoints.jmx.exposure.exclude=*

52.3 使用Jolokia經過HTTP實現JMX

Jolokia是一個JMX-http橋樑,它提供了訪問JMX bean的另外一種方法,使用Jolokia,引入org.jolokia:jolokia-core的依賴,例如,使用Maven,你將添加如下依賴項:debug

<dependency>
    <groupId>org.jolokia</groupId>
    <artifactId>jolokia-core</artifactId>
</dependency>

而後能夠經過在management.endpoints.web.exposure.include屬性中添加Jolokia*來公開Jolokia端點,而後,你能夠使用/actuator/jolokia在你的管理HTTP服務器上訪問它。code

52.3.1 定製Jolokia

Jolokia有許多設置,你一般經過設置servlet參數來配置它們,使用Spring Boot,你能夠使用你的application.properties文件,爲此,在參數前面加上management.endpoint.jolokia.config.,以下例所示:servlet

management.endpoint.jolokia.config.debug=true

52.3.2 禁用Jolokia

若是你使用Jolokia但不但願Spring Boot配置它,設置management.endpoint.jolokia.enabled屬性爲false,以下所示:io

management.endpoint.jolokia.enabled=false
相關文章
相關標籤/搜索