2012-06-27 9 views
5

Ich versuche, den Inhalt eines Themas mit activemq-admin anzuzeigen.Kann der Inhalt eines AMQ-Themas irgendwie betrachtet werden?

Das ist, was ich versuche:

./activemq-admin browse --amqurl tcp://localhost:61616 my.topic 

Dies ist, was ich als Ausgabe erhalten:

Java Runtime: Sun Microsystems Inc. 1.6.0_24 /usr/lib/jvm/java-6-sun-1.6.0.24/jre 
Heap sizes: current=62848k free=62190k max=932096k 
JVM args: -Dactivemq.classpath=/home/pc/dev/apache-activemq-5.3.1/conf; -Dactivemq.home=/home/pc/dev/apache-activemq-5.3.1 -Dactivemq.base=/home/pc/dev/apache-activemq-5.3.1 
ACTIVEMQ_HOME: /home/pc/dev/apache-activemq-5.3.1 
ACTIVEMQ_BASE: /home/pc/dev/apache-activemq-5.3.1 

Welche nicht das, was ich will. Ich möchte irgendwie die Nachrichten in der Warteschlange in roher Form sehen. Ist das möglich ?

Danke,

+0

Beantwortet die Frage nicht - aber ich kann bestätigen, dass ich den Inhalt eines Themas unter http: // localhost: 8161/admin/topics.jsp nicht sehen kann, wenn ich zu http: // localhost gehe: 8161/admin/queues.jsp Ich kann zum Inhalt von Nachrichten navigieren, die nicht aus der Warteschlange entfernt wurden. Ich weiß nicht, warum das so ist. – Sridhar

Antwort

3

Sie nicht den Inhalt der Themen aufgrund der Natur von dem, was ist ein Thema, blättern mit ansehen können. Nachrichten werden gesendet, und wenn Teilnehmer vorhanden sind, erhält jeder zu diesem Zeitpunkt eine Nachricht. Nachrichten werden im Allgemeinen nicht beibehalten (mit einigen Ausnahmen, die hier nicht relevant sind).

Manchmal ist es jedoch für Debugging-Zwecke nützlich, Nachrichten zu sehen, die an ein Thema gesendet wurden. Der einfachste Weg dazu besteht darin, eine virtual destination einzurichten, die jede an das Thema gesendete Nachricht in eine Warteschlange kopiert.

<destinationInterceptors> 
    <virtualDestinationInterceptor> 
     <virtualDestinations> 
      <compositeTopic name="events" forwardOnly="false"> 
       <forwardTo> 
        <queue physicalName="events.thatHaveHappened" /> 
       </forwardTo> 
      </compositeTopic> 
     </virtualDestinations> 
    </virtualDestinationInterceptor> 
</destinationInterceptors> 

Sie können die Warteschlange dann über JMX oder die Webkonsole durchsuchen.

1

Sie den Inhalt der Nachrichten in der Warteschlange der web console

enter image description here

+0

Wie? Ich kann die Anzahl der produzierten/konsumierten Nachrichten sehen, aber nicht die genauen Nachrichten. – Simeon

+1

Können Sie http: // : /admin/anzeigen? Navigieren Sie dann zu Warteschlangen (im Menü), klicken Sie auf einen der Warteschlangennamen und dann auf eine der Nachrichten. Siehe Screenshot oben hinzugefügt. – Sridhar

+0

Oh ich habe deinen anderen Kommentar jetzt entschuldigt. Ja, ich kann auch den Inhalt der Warteschlangen sehen, aber nicht die Themen (und ich brauche die Themen). Vielen Dank. – Simeon

1

Diese Drittanbieter-Tool können Sie zu Themen abonnieren und die Nachrichten zu einem Thema inspizieren:

http://sourceforge.net/projects/activemqbrowser/

Verbindung mit dem Server, abonnieren Sie dann auf das gewünschte Thema. Es funktionierte OK für mich, um die Nachrichtendetails und Payloads zu sehen.

Verwandte Themen