SpringBoot(35) - Actuator(3) - 通过JMX监控和管理

参考:https://docs.spring.io/spring-boot/docs/1.5.18.RELEASE/reference/htmlsingle/#production-ready-jmx

Java Management Extensions(JMX)提供了一种监视和管理应用程序的标准机制。 默认情况下,Spring Boot会将管理端点暴露为org.springframework.boot域下的JMX MBean。

1. 自定义MBean名称
MBean的名称通常是从端点的id生成的。 例如,health端点暴露为 org.springframework.boot/Endpoint/healthEndpoint。

如果应用程序包含多个Spring ApplicationContext,可能会发现名称发生冲突。 要解决此问题,可以将endpoints.jmx.unique-names属性设置为true,以便MBean名称始终是唯一的。

还可以自定义暴露端点的JMX域。 这是一个示例application.properties:

endpoints.jmx.domain=myapp
endpoints.jmx.unique-names=true

2. 禁用JMX端点
如果不想通过JMX暴露端点,可以将endpoints.jmx.enabled属性设置为false:

endpoints.jmx.enabled=false

3. 通过HTTP使用Jolokia for JMX
Jolokia是一个JMX-HTTP桥,提供了一种访问JMX bean的替代方法。 要使用Jolokia,只需在org.jolokia中包含一个依赖项:jolokia-core。 例如,使用Maven,添加以下内容:

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

然后可以在管理HTTP服务器上使用 /jolokia 访问Jolokia。

3.1 自定义Jolokia
Jolokia有许多传统上使用servlet参数配置的设置。 使用Spring Boot,可以使用application.properties,只需在参数前加上jolokia.config:

jolokia.config.debug=true

3.2 禁用Jolokia
如果正在使用Jolokia但不希望Spring Boot配置它,只需将endpoints.jolokia.enabled属性设置为false:

endpoints.jolokia.enabled=false

猜你喜欢

转载自blog.csdn.net/mytt_10566/article/details/84950162
今日推荐