【问题标题】:How to monitor a spring-boot application via JMX?如何通过 JMX 监控 spring-boot 应用程序?
【发布时间】:2014-09-10 10:45:29
【问题描述】:

我正在尝试为使用 spring-boot 构建的命令行应用程序设置 JMX 监控。

根据https://github.com/spring-projects/spring-boot/tree/master/spring-boot-actuator我只需要添加依赖即可:

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

现在我启动我的应用程序,打开 VisualVM,我已经看到了我的应用程序 PID。 但是我现在如何访问actuator 页面上提到的/health 等指标?由于这是一个命令行应用程序,我没有任何可以执行的 HTTP 路径。

如何通过 JXM 查看这些指标?

【问题讨论】:

  • 你是否真的尝试过连接到那个 PID...
  • 是的,当然我已经连接并且还看到了堆等,但不是 spring 的 jmx bean
  • 您的链接已失效。

标签: java spring jmx spring-boot visualvm


【解决方案1】:

如果你想用 JVisualVM 访问 JMX bean,你需要安装 VisualVM-MBeans 插件(去工具 -> 插件 -> 可用插件)。也可以使用JConsole,默认可以访问JMX bean。

【讨论】:

    【解决方案2】:

    跟进:你必须在启动时设置一个JMX端口;像这样:

    -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

    然后,从 VisualVM 添加 JMX Connexion(在本例中为 localhost:8000)以访问应用程序。另请参阅 Eclipse 等 IDE 中的启动器参数。 注意:也可以设置凭据,请参阅 JMX 手册了解选项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 2015-01-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多