2012-06-27 84 views
5

我在嘗試使用activemq-admin來查看主題的內容。可以以某種方式查看AMQ主題的內容嗎?

這就是我想:

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

這是我得到的輸出:

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 

這是不是我想要的。我想以某種方式查看原始形式的隊列中的消息。那可能嗎 ?

感謝,

+0

不回答問題 - 但我可以確認我無法在http:// localhost:8161/admin/topics.jsp中看到主題的內容,但是當我轉到http:// localhost: 8161/admin/queues.jsp我可以導航到尚未出列郵件的內容。不知道這是爲什麼。 – Sridhar

回答

3

您無法瀏覽主題的內容因的話題是什麼性質查看隊列中的消息的內容。消息被髮送,並且如果有任何訂戶,則每個消息都在該時間點接收消息。通常不會保留消息(有些例外與此無關)。

但是,有時出於調試目的,查看發送到主題的消息很有用。最簡單的方法是設置一個virtual destination,將每個發送到該主題的消息複製到一個隊列中。

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

然後,您可以通過JMX或Web控制檯瀏覽隊列。

1

您可以使用web console

enter image description here

+0

如何?我可以看到生成/消耗的消息數量,但不是確切的消息。 – Simeon

+1

你能查看http:// /admin /?然後導航到隊列(在菜單中),點擊其中一個隊列名稱,然後點擊其中一條消息。查看上面添加的屏幕截圖。 – Sridhar

+0

哦,我現在看到你的其他評論對不起。是的,我還可以看到隊列中的內容,但沒有看到主題(我需要這些主題)。謝謝。 – Simeon

相關問題