2017-03-02 8 views
0

メッセージが特定のキューに到着する時間とそれが消費された時間を監視する方法(サードパーティのソフトウェアまたはプログラミング)はありますか?activeMQのキュー到着とメッセージのディスパッチ時間を監視するにはどうすればよいですか?

メッセージのようなものは、17時14分22秒565に到着し、17時14分22秒598で消費やメッセージがNミリ秒

をキューに入れた私はおよそStatistics pluginを読みましたが、それはただmaxとの最小時間を与えますエンキューされたメッセージ

答えて

0

あなたがメッセージをブローカーに配信されたときに通知されるように、以下のhttp://activemq.apache.org/advisory-message.html

第一の例を使用することができます。 メッセージが消費されたときに通知される2番目の例。

AdvisorySupport.getMessageDeliveredAdvisoryTopic() 
AdvisorySupport.getMessageConsumedAdvisoryTopic() 

メッセージが到着またはブローカーを去ったとき、または時間外に、作成日時などのメッセージ・プロパティへのアクセス権を持っているためにここに以下の例を参照してください。ここ は一つの方法は、独自のプラグインを書くことですプロパティhttp://activemq.apache.org/activemq-message-properties.html

Spring JMS Producer and Consumer interaction

+0

ちょうど私が必要なもの、感謝! – AndresDLRG

0

のリストです。 (http://activemq.apache.org/developing-plugins.html

これは非常に簡単で、activemqブローカーコードを変更した場合と同様の効果があります。

brokerFilterクラスを拡張し、postProcessDispatch()、send()などのメソッドをオーバーライドできます。次に、時間を記録したり、自分のコードに必要なものを記録することができます。

私は単純な例(https://github.com/lcy362/FoxActivemqPlugin/blob/b54d375a6a91a9ec418e779deb69a8b11f7d985a/src/main/java/com/mallow/activemq/FoxBrokerPlugin.java)を書いて、役に立つと思っています。

関連する問題