【问题标题】:JMX Connection to Mule 4 Project running LocallyJMX 连接到本地运行的 Mule 4 项目
【发布时间】:2020-09-23 21:14:43
【问题描述】:

如何将 JMX 代理连接到本地运行的 Mule 4 项目?当我启动 JConsole 时,我看到两个名为 org.mule.runtime.module.reboot.MuleContainerBootstrap 的 mule 相关进程,但我无法连接到任何一个。

我尝试使用以下标志运行我的项目并远程连接:

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1096
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.host=localhost

但没有运气。

【问题讨论】:

    标签: mule jmx mule4


    【解决方案1】:

    仅使用这些属性连接到 (localhost:1096) 没有问题:

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

    JConsole 给了我一个关于不安全连接(无 SSL)的警告。我接受了不安全的连接,这就足够了。

    但是,当添加 -Dcom.sun.management.jmxremote.host=localhost 时,总是无法连接。这看起来像是一个 Java 问题。

    如果您只想确保本地连接,可以将其替换为 -Dcom.sun.management.jmxremote.local.only=true,这应该会给您预期的结果。

    话虽如此,这都是一个纯粹的Java JMX话题。 Mule 4 不像 Mule 3 那样通过 JMX 公开任何 MBean,因此没有特定的理由与 JMX 连接。

    我不确定您为什么要使用 jconsole,因为 VisualVM 是一种非常现代且功能强大的替代方案,除非您只是在测试本地 JMX 连接 ;-)

    【讨论】:

    • JConsole 正是我当时碰巧在我的工具箱中拥有的 :) 我将使用 VisualVM 和您提供的参数来试一试。谢谢!
    • 如果你想检查 bean,你可能需要在 VisualVM 中安装一个 MBeans 插件。它甚至支持我相信的 JConsole 插件插件。
    猜你喜欢
    • 2020-02-08
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 2021-10-14
    • 1970-01-01
    • 1970-01-01
    • 2013-05-15
    • 1970-01-01
    相关资源
    最近更新 更多