2011-05-16 92 views
5

我對我的AMQ 5.2實例成功地使用了Web控制檯,除了我看不到所有消息的內容外。ActiveMQ在Web控制檯中查看原始消息數據

如果我使用Web控制檯發送測試消息,我可以看到示例文本內容,但我相信我正在使用的供應商應用程序具有二進制或字節數組消息內容。

有什麼我需要做的,才能夠查看這些原始數據?

謝謝,

回答

4

據我所知,無法檢查管理控制檯中的郵件。你可以得到一些統計數據(比如發送了多少條消息等)。 ActiveMQ在收到消息時不會解組消息(出於性能原因,解組費用相當高)。

因此,如果你希望有一些方法來檢查消息的內容,你基本上可以做兩件事情:

  1. 寫一個消費者,其登記的所有主題/隊列,通過它你可以看到消息'的內容。缺點:如果您使用基於隊列的交互,您的「真實」消費者將無法獲得所有消息。編寫一個查看消息的activeMQ插件。
  2. 編寫一個查看消息的activeMQ插件。看看ActiveMQ的Logger插件。然後編寫你自己的(你需要源代碼來編譯它)並使用ActiveMQ加載它(參見關於如何配置ActiveMQ來加載插件的文檔)。您希望覆蓋send()方法,該方法在有人向代理髮送消息時被調用。您可以獲得對該消息的引用並可以訪問其內容。

雖然這兩個消息都沒有提供方便的查看機制。你必須訴諸標準,或編寫自己的基於Web的訪問。