activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From artnaseef <...@artnaseef.com>
Subject Re: Is it possible to get a list of queues on a remote broker?
Date Mon, 16 Jun 2014 03:38:18 GMT
JMX and Jolokia are the most straight-forward solutions.

It's possible to get the list in other ways.  For example, subscribing to
the destination advisory will return all existing destinations:

Here's the code snippet:
            } else if
(AdvisorySupport.isDestinationAdvisoryTopic(info.getDestination()))
{
                // Replay all the destinations.
                for (DestinationInfo destination : destinations.values()) {
                    ActiveMQTopic topic =
AdvisorySupport.getDestinationAdvisoryTopic(destination.getDestination());
                    fireAdvisory(context, topic, destination,
info.getConsumerId());

With that said, I recommend against the Advisory route.  Looking carefully
at this code in context will reveal that adding one consumer to an
advisory causes duplicate sends to all existing advisory consumers.  Very
bad for scaling.

Another possibility: ActiveMQConnection has a method named
getDestinationSource() which returns an object for obtaining lists of
destinations and listening for addition and removal of destinations.

    http://activemq.apache.org/maven/apidocs/org/apache/activemq/ActiveMQConnection.html

I'm not sure how security applies to this interface.

>
>
> Hi
>
> There is a bin/activemq-admin script you can use to query a local /
> remote broker about details.
> It uses JMX for that, so you would need network connectivity that
> works with that.
>
> If you are more a HTTP/REST guy then there is a REST api in ActiveMQ
> exposed by Jolokia
>
> On a local broker its usually at
> http://localhost:8161/api/jolokia
>
> Then its just a REST call to get the list of destinations.
> We use that in hawtio to manage ActiveMQ brokers and a lot more.
>
>
>
> On Sat, Jun 14, 2014 at 2:15 AM, Kevin Burton <burton@spinn3r.com> wrote:
>> I'm trying to figure out how to get a list of existing queues on a
>> remote
>> broker.
>>
>> It looks like I can listen to queues as they are created/destroyed by
>> adding an advisory message (which I don't yet have working) but I need
>> to
>> get all EXISTING queues on startup.
>>
>> It looks like I can do this with getDestinationMap:
>>
>> http://activemq.apache.org/maven/apidocs/org/apache/activemq/broker/region/Region.html#getDestinationMap()
>>
>> But that seems like it can only be called from an embedded and
>> in-process
>> broker.
>>
>> I mean... I'm willing to go that route but it seems to make more sense
>> to
>> just have the normal init/daemon setup for activemq and then have a
>> remote
>> process connect to it like a normal JMS consumer.
>>
>> This documentation seems to imply that it's possible:
>>
>> http://activemq.apache.org/how-can-i-see-what-destinations-are-used.html
>>
>> But that's by using a Region object and that only seems possible if
>> you're
>> in the same JVM as activemq.
>>
>> --
>>
>> Founder/CEO Spinn3r.com
>> Location: *San Francisco, CA*
>> Skype: *burtonator*
>> blog: http://burtonator.wordpress.com
>> … or check out my Google+ profile
>> <https://plus.google.com/102718274791889610666/posts>
>> <http://spinn3r.com>
>> War is peace. Freedom is slavery. Ignorance is strength. Corporations
>> are
>> people.
>
>
>
> --
> Claus Ibsen
> -----------------
> Red Hat, Inc.
> Email: cibsen@redhat.com
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen
> hawtio: http://hawt.io/
> fabric8: http://fabric8.io/
>
>
>
>
> _______________________________________________
> If you reply to this email, your message will be added to the discussion
> below:
> http://activemq.2283324.n4.nabble.com/Is-it-possible-to-get-a-list-of-queues-on-a-remote-broker-tp4682144p4682150.html
> To start a new topic under ActiveMQ - User, email
> ml-node+s2283324n2341805h3@n4.nabble.com
> To unsubscribe from ActiveMQ - User, visit
> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=2341805&code=YXJ0QGFydG5hc2VlZi5jb218MjM0MTgwNXwtMjA1NDcyNjY5MQ==





--
View this message in context: http://activemq.2283324.n4.nabble.com/Is-it-possible-to-get-a-list-of-queues-on-a-remote-broker-tp4682144p4682183.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message