如何在Spring Boot Standalone App中激活JMX监视

时间:2018-09-22 15:44:23

标签: java spring-boot jmx jolokia

我遍历了几乎所有文档,但所有内容都使我无法掌握。 所以我的问题-我可以使用独立的Spring Boot应用程序通过http jmx url监视应用程序的运行状况和其他指标吗?我是否需要为此配置其他内容? 我在启动应用中添加了以下依赖项。

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.jolokia</groupId>
        <artifactId>jolokia-core</artifactId>
    </dependency>

我还在配置文件中配置了以下属性。

management.endpoints.web.exposure.include=*
management.endpoints.jmx.unique-names=true
management.server.port=8080
management.server.ssl.enabled=false

当我尝试访问URL:http://localhost:8080/actuator/jolokia/health时,我看不到任何结果。

还尝试添加自定义终点,如下所示,但不起作用。

@Endpoint(id="mypoint")
    @Component
    public class myPointEndPoint {
        @ReadOperation
        public String mypoint(){
            return "Hello" ;
        }

具有其他属性
management.endpoint.mypoint.enabled = true

1 个答案:

答案 0 :(得分:1)

问题是您尝试调用的URL。 首先,使用http://localhost:8080/actuator/jolokia/list

检索可能的mbean。

查看Health mbean时,必须提供唯一的名称和操作(op)。

就我而言,它看起来像:http://localhost:8080/actuator/jolokia/exec/org.springframework.boot:type=Endpoint,name=Health,identity=4200098/health

还请查看Jolokia文档:https://jolokia.org/reference/html/index.html