如何在 Websphere 中启用 JMX?

2022-09-01 11:31:52

我想使用JConsole来监视我的Websphere应用程序,但我不知道如何启用JMX。


答案 1

以下信息适用于 Windows 上的 Websphere 6.1。

首先,连接到 MBean 服务器的神奇 URL 是:

service:jmx:iiop://<host>:<port>/jndi/JMXConnector

如果您有缺省的 Websphere 安装,则 JNDI 端口号可能是 2809、2810、...取决于一个系统上安装了多少台服务器以及要连接到的特定服务器。可以肯定的是,在启动Websphere时,请检查日志,因为它会转储一行,例如

0000000a RMIConnectorC A   ADMC0026I: The RMI Connector is available at port 2810

如果您没有收到此行,请打开 Websphere 管理控制台并转到

服务器 1 >管理服务> JMX 连接器>应用程序服务器

以查看是否需要添加或更改配置。

第二个重要的信息是,在对服务器执行 JMX 时,始终需要以下 JAR:

com.ibm.ws.admin.client_6.1.0.jar

您可以在Websphere的目录中找到这个JAR。无论你做什么,无论是在Websphere上以编程方式访问MBeans,还是使用JConsole,等等,都要使用魔术URL并始终包含这个JAR。runtimes

对于此答案的其余部分,假设 Websphere 安装在 D:\prog\was61 中。

要运行 JConsole,请键入以下内容:

D:\prog\was61\java\bin>jconsole -J-Djava.class.path=d:\prog\was61\java\lib\tools.jar;D:\prog\was61\runtimes\com.ibm.ws.admin.client_6.1.0.jar

然后转到“高级”选项卡并输入神奇的JMX URL。按连接,您应该会看到 MBean 出现。

使用 Sun JDK 是完全不同的问题。您需要一个额外的JAR,该JAR位于IBM JDK的lib中,而不是Sun的(ibmorb.jar),也许以下命令可能适合您:

C:\Program Files\Java\jdk1.5.0_11\bin>jconsole -J-Djava.class.path="c:\Program Files\Java\jdk1.5.0_11\lib\jconsole.jar";"c:\Program Files\Java\jdk1.5.0_11\lib\tools.jar";D:\prog\was61\runtimes\com.ibm.ws.admin.client_6.1.0.jar;D:\prog\was61\java\jre\lib\ibmorb.jar

我说也许吧,因为它对我不起作用。我收到了一个不错的jndiUnavailCommErr错误消息,因为它期望在我的Websphere安装正在2810上侦听端口2809上,尽管我在JMX URL中正确指定了端口2810。但是,如果您调整路径以指向您的 Sun JDK,它可能适合您。这是我使用Sun的JDK连接到Websphere的最接近的一次。

最后一点:我尝试了基于RMI的解决方案,还有一个SOAP连接器可用,但尚未尝试过。

与 J2EE、Websphere 和其他东西一样:祝你好运,你需要它。


答案 2

这很简单。只需使用以下 JMX 参数启动 Websphere:

-Djavax.management.builder.initial= 
-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.port=1099

然后启动 JConsole 或 VisualVM 并连接到 localhost:1099

由于我不允许发布证明屏幕截图,因此我从visualvm“概述选项卡”发布信息。

PID: 12568
Host: localhost
Main class: <unknown>
Arguments: <none>
JVM: IBM J9 VM (2.3, J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223-20100808 (JIT enabled)
J9VM - 20100629_60535_lHdSMr
JIT - 20100623_16197_r8
GC - 20100211_AA)
Java: version 1.5.0, vendor IBM Corporation
Java Home: C:\Program Files\IBM\SDP\runtimes\base_v61\java\jre
JVM Flags: <none>
Heap dump on OOME: disabled

推荐