2016-04-11 3 views
1

Ich muss einen Test auf einem Remote-Host ausführen, auf dem ActiveMQ ausgeführt wird, und ich möchte überprüfen, ob der Name der Warteschlange der richtige Name ist, indem Sie ihn mit einer lokalen Datei vergleichen. Ich habe bstat verwendet, um den Status von activeMQ zu erhalten, und dann den Teil greped, der destionName hat, aber ich fragte mich, ob es einen besseren Weg gibt, es über die Befehlszeile oder Shell nicht Java zu tun?Wie bekomme ich einen aktiven MQ-Queue-Namen von der Kommandozeile?

danke im voraus!

Antwort

2

Sie könnten das Befehlszeilenprogramm "a" verwenden.

a -b tcp://remote-broker-hostname:61616 --list-queues

würde

drucken
Queues: 
Queue4 
DELAYED 
ChatMessages 
Operation completed in 22ms (excluding connect) 

Es ist in Java geschrieben ist.

Haftungsausschluss: Ich bin der Autor dieses Tools.

0

Ich verwende dieses Tool jmxterm, um ActiveMQ-Warteschlangenstatistiken zu erhalten & überprüfen Warteschlange Benutzer von einem Bash-Skript.

Die folgenden Befehle eine Verbindung zu AMQ ruuning auf localhost paar Statistiken einer Warteschlange ‚myQueue‘

open service:jmx:rmi://localhost:44444/jndi/rmi://localhost:1099/karaf-root -u user -p password 
get -s -d org.apache.activemq -b BrokerName=default,Destination=MyQueue,Type=Queue QueueSize EnqueueCount DequeueCount ConsumerCount 
0

Versuchen activemq Abfrage mit -QQueue und -Blick Argumente Befehl Arbeit.

#apache-activemq-5.10/bin/activemq query -QQueue=* --view Name | grep Name 

Name = test.queue 
Name = notification-q 

Und Sie können das Argument „--jmxurl“ mit dem richtigen Wert übergeben zu entfernten ActiveMQ Server zu kommunizieren.

Verwandte Themen