[wildfly-dev] JConsole plugin - fallback and query for management address

Brian Stansberry brian.stansberry at redhat.com
Mon Aug 5 11:01:11 EDT 2013


On 8/5/13 9:20 AM, ssilvert at redhat.com wrote:
> On 8/5/2013 10:06 AM, Brian Stansberry wrote:
>> AIUI Darran's objection, this isn't particularly related to domain mode.
>> It's that our jconsole plugin shouldn't be opening remoting connections
>> to an arbitrary URL when the user has configured a direct connection.
> The intention here is that the CLI plugin should work when the user has
> NOT configured a direct remoting connection.  You can launch jconsole,
> click on the local server process, and CLI connects automatically.  It's
> much easier than typing the hard-to-remember remoting URL.  It's just
> two clicks and you are done.
>>
>> I agree with that and am fine with removing this feature from WF 8 and
>> just putting explanatory text in the tab.
>>
>> What if they have 2 servers on the machine, one 9990 and the other on
>> 9991 and they direct connect to the 9991 process?
> Don't we have the same kind of problem with 'jboss-cli -c' ?  It does
> the right thing 99.9% of the time.  It's just a convenience for the
> localhost developer.
>

The jboss-cli command is a WildFly command, unlike jconsole. A user can 
read our documentation and understand what the impact of command line 
options will be, and if they don't and get unexpected behavior I don't 
think they'll be greatly surprised. The jconsole connection dialogue is 
part of jconsole, not part of our plugin. A user cannot read standard 
jconsole documentation and understand that with this particular mbean 
server the direct connection option will result in a remoting connection 
being opened to an arbitrary URL.

>>
>> On 8/5/13 8:34 AM, Jaikiran Pai wrote:
>>> It's this PR https://github.com/wildfly/wildfly/pull/4662 (which we
>>> closed pending discussion).
>>>
>>> -Jaikiran
>>> On Monday 05 August 2013 06:46 PM, ssilvert at redhat.com wrote:
>>>> I can't find the PR you are referring to and I'm not sure I fully
>>>> understand what the problem is.
>>>>
>>>> However, I can tell you that the original goal was to make this work
>>>> just like 'jboss-cli -c' where if you don't specify anything it will try
>>>> to connect using our best guess of localhost:9990.  If you can make that
>>>> smarter I don't see how it breaks backward compatibility.  It sounds to
>>>> me like a good enhancement.
>>>>
>>>> But Darran's objection may have something to do with what happens in a
>>>> domain environment.  It's possible to connect jconsole to a server
>>>> instance that is not the domain controller.  In that case you can't
>>>> (shouldn't?) connect CLI to it.  So automatic discovery might discover
>>>> something that is bogus from a CLI point of view.
>>>>
>>>> Stan
>>>>
>>>> On 8/5/2013 4:52 AM, Bartosz Baranowski wrote:
>>>>> Hey Guys.
>>>>>
>>>>> I missed last comment on related PR, hence I did not start this thread.
>>>>>
>>>>> Currently JConsole plugin does something like:
>>>>>
>>>>> if(as7Remoting){
>>>>> //use
>>>>> } else {
>>>>> //discard connection
>>>>> // try to connect on hardcoded values locahost:9990
>>>>> }
>>>>>
>>>>> https://github.com/wildfly/wildfly/blob/master/cli/src/main/java/org/jboss/as/cli/gui/JConsoleCLIPlugin.java#L100
>>>>>
>>>>> Ive propesed a change to use existing connection to query for proper IP/port pair of management interface and than attempt to use cmdContext.connect. However it has been deemed as unfit fix - even though it just addapts IP/port rather than make plugin always use localhost:9990.
>>>>>
>>>>>
>>>>> Darran commented on this at some point:
>>>>>
>>>>> "However as I have said elsehwere I think this is attempting to fix a 'feature' that should not exist in it's current form"
>>>>> Trick is that this "feature" is there, its faulty, but if its removed, it breaks backward compatibility.
>>>>>
>>>>> Also:
>>>>>
>>>>> Where jconsole is connected to the process locally I suggest two alternatives: -
>>>>>     - Add the CLI tab but with a clear message stating why the CLI is not currently available, potentially add an 'Establish Connection' button to the tab with the capability to prompt for a username and password if required and make use of the discovered address.
>>>>>     -Add an MBean that can handle management ops, the CLI integration can use that MBean regardless of the connection method and would not require the establishment of additional connections.
>>>>>
>>>>> So, any comments/suggestions?
>>>>> _______________________________________________
>>>>> wildfly-dev mailing list
>>>>> wildfly-dev at lists.jboss.org
>>>>> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>> _______________________________________________
>>>> wildfly-dev mailing list
>>>> wildfly-dev at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>> _______________________________________________
>>> wildfly-dev mailing list
>>> wildfly-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>
>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>


-- 
Brian Stansberry
Principal Software Engineer
JBoss by Red Hat


More information about the wildfly-dev mailing list