如何使用 PlatformMbeanServer 获取 Websphere 中的 Cluster 节点?
How to get Cluster nodes in Websphere using PlatformMbeanServer?
我已经在 WebSphere 中部署了一个 war 应用程序,作为 Server1 和 Server2 的一部分。
有一个集群有这两台服务器。
我想编写 java 代码作为我的 war 应用程序的一部分并获取集群节点详细信息。
MBeanServer mbServer = ManagementFactory.getPlatformMBeanServer();
Set mBeanSet = mbServer.queryMBeans(null, null);
以上代码没有列出cluster mbean,事实上,这里并没有列出所有的mbean。
同样来自 Jconsole,Cluster Mbean 未在此处列出。
我是不是漏了什么?
WebSphere MBean 与 JVM Mbean 不在同一个 MBean 服务器中。下面是列出所有 WebSphere MBean 的代码。由于 Cluster Mbean 在 Deployment Manager 上,我们必须在那里寻找它。
ObjectName on = new ObjectName("WebSphere:*");
Set mbeans = AdminServiceFactory.getAdminService()
.getDeploymentManagerAdminClient().queryMBeans(on, null);
for (Object o: mbeans){
System.out.println("mbean: "+ o);
}
我已经在 WebSphere 中部署了一个 war 应用程序,作为 Server1 和 Server2 的一部分。 有一个集群有这两台服务器。 我想编写 java 代码作为我的 war 应用程序的一部分并获取集群节点详细信息。
MBeanServer mbServer = ManagementFactory.getPlatformMBeanServer();
Set mBeanSet = mbServer.queryMBeans(null, null);
以上代码没有列出cluster mbean,事实上,这里并没有列出所有的mbean。
同样来自 Jconsole,Cluster Mbean 未在此处列出。
我是不是漏了什么?
WebSphere MBean 与 JVM Mbean 不在同一个 MBean 服务器中。下面是列出所有 WebSphere MBean 的代码。由于 Cluster Mbean 在 Deployment Manager 上,我们必须在那里寻找它。
ObjectName on = new ObjectName("WebSphere:*");
Set mbeans = AdminServiceFactory.getAdminService()
.getDeploymentManagerAdminClient().queryMBeans(on, null);
for (Object o: mbeans){
System.out.println("mbean: "+ o);
}