0

I've had a Spring 3.x application running on Solaris (5.10) in a VMWare VM for quite a while. My application registers some mbeans. I've been able to connect remotely to the VM from VisualVM and view data in the "Monitor" tab, and I've been able to see and manipulate my application mbeans in the MBeans tab.

My server was recently moved to another VMWare VM, although the host name and IP address didn't change. We got it all working, I thought, until I noticed some odd behavior when I tried to connect to the VM from VisualVM on my desktop. When I first tried it, I thought it was working fine, but when I looked closer I noticed that there was no "Monitor" tab, and when I looked at the MBeans tab, it didn't have any of my application mbeans.

I can run a local WebLogic instance, and I don't see these issues when I connect locally with VisualVM.

It doesn't seem like it would be a firewall problem. The connection succeeded. In the "Overview" tab I can see all the basic property settings.

Why would my remote connection have "degraded" functionality?

David M. Karr
  • 14,317
  • 20
  • 94
  • 199
  • 1
    You are seeing only platform mbeans like jvm memory etc., not your mbeans, is that correct? – kosa Jan 23 '12 at 22:40
  • That is the group that I care about, but I see that there are other differences in what groups are included. For instance, on a local connection, I see "JMImplementation", "Security", "", "com.bea", "com.oracle.jdbc", "com.sun.management", "java.lang", and "java.util.logging". On the remote connection with the problem, I see "JMImplementation", "com.oracle.jdbc", "com.sun.management", "java.lang", and "java.util.logging". So there are two other groups missing besides "". – David M. Karr Jan 23 '12 at 23:17

1 Answers1

1

It looks like your remote is connected to the wrong MBeanServer, which is to say, rather than connecting to the WebLogic Domain Runtime Server, you are connecting to the JVM's platform MBeanServer. I'm not certain, but I think you should be able to connect to any of the three MBeanServers running in the WebLogic instance, as outlined here.

There is also an option to register your Weblogic Domain MBeans in the platform MBeanServer.

Nicholas
  • 15,916
  • 4
  • 42
  • 66
  • My problem with following this line of inquiry you describe is that I'm pretty sure this was WORKING before the VM was moved. Nevertheless, I've read through the docs you've provided, but I'm still uncertain exactly how to make this happen. – David M. Karr Jan 24 '12 at 19:43
  • What URL (JMXServiceURL or host:port) are you using to connect to the remote VMware hosted weblogic instance ? – Nicholas Jan 24 '12 at 20:12
  • service:jmx:rmi:///jndi/rmi://:8888/jmxrmi – David M. Karr Jan 24 '12 at 23:25
  • And if it matters, here are the relevant jvm args that I added to the admin server: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true – David M. Karr Jan 25 '12 at 00:23
  • It also occurs to me that I have two Weblogic servers running on this box. The admin server is listening on port 7001, and the managed server on 8001. Is it possible my JMX connection is going to the admin server, but my application mbeans are only on the managed server? Even if that was true, that wouldn't explain the missing "Monitor" tab. – David M. Karr Jan 25 '12 at 00:26
  • Correction on the comment about my command-line args. Those are the args I'm sending to the MANAGED server, not the admin server. I'm not sure what's required here. – David M. Karr Jan 25 '12 at 16:48