Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>So, the short answer to my question is "no."</p> <p>However, it's interesting to examine why. Look at the <code>netstat</code> output from a valid local connection. Here are the ports that I see opened up as a result of a <code>jconsole</code> making a local connection to itself. As you can see, port 1650 is the local port being used for the JMX information: </p> <pre><code>Proto Local Address Foreign Address State TCP Gandalf:1650 Gandalf:1652 ESTABLISHED TCP Gandalf:1650 Gandalf:1653 ESTABLISHED TCP Gandalf:1650 Gandalf:1654 ESTABLISHED TCP Gandalf:1650 Gandalf:1655 ESTABLISHED TCP Gandalf:1650 Gandalf:1656 ESTABLISHED TCP Gandalf:1652 Gandalf:1650 ESTABLISHED TCP Gandalf:1653 Gandalf:1650 ESTABLISHED TCP Gandalf:1654 Gandalf:1650 ESTABLISHED TCP Gandalf:1655 Gandalf:1650 ESTABLISHED TCP Gandalf:1656 Gandalf:1650 ESTABLISHED </code></pre> <p>However, it's not sufficient to try to connect <code>jconsole</code> to <code>localhost:1650</code>. Sadly, all that will net you is a "Connection failed: no such object in table" message.</p> <p>So, the conclusion of my original story is that, if we are going to facilitate remote monitoring using JMX for our customers, we really need to identify unique individual remote access ports for the variety of Java processes that are started in our system. Fortunately, all this requires is the judicious use of the VM argument:</p> <pre><code>com.sun.management.jmxremote.port=portNum </code></pre> <p>where we will almost certainly have a sequential pre-specified range of <code>portNum</code> so that the customer can select the correct remote application using the port number.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload