3

ルートのステップのパフォーマンスの時間を計りたい。私はラクダのAOPを使用してタイマーを開始し、ステップを実行し、タイマーを停止してログに記録することを検討していました。ただし、AOPは現在非推奨であり、Interceptメカニズムの使用を検討しましたが、前に「アドバイス」を追加するだけで、後で必要になります。これを行うためのクリーンな方法はありますか?

4

3 に答える 3

9

ええ、多くの選択肢があります。

Fuse IDE に関する上記のコメントを修正します。このエディタはオープンソースで、誰でも無料で使用できます。サブスクリプションは必要ありません。Red Hat に買収されて以来、これを無料で提供しています。

1)モニタリングについて。次に、 Camel アプリの監視について人々が書いたブログhttp://camel.apache.org/articlesを確認でき ます。

2) また、http://camel.apache.org/user-stories.html には CamelWatch などのサードパーティ製アプリがいくつかあります

3) James Strachan (Camel の創設者) と Fuse チームの他のメンバーは、Hawt IO と呼ばれる Camel およびその他の統合フレームワーク用の Web コンソールに取り組んでいます - http://hawt.io/

4) アランがすでに指摘したように、利用できるイベントを発行するイベント通知機能を使用できます。

5) Fuse HQ / JON / Hyperic / などのサードパーティ ツールと統合できる JMX API があります。

6) nagios 統合用の camel-nagios コンポーネントがあります

7) また、Camel in Action ブックの第 12 章にもいくつかの詳細があります: http://manning.com/ibsen/

8) グループサイズ/グループ間隔オプションhttp://camel.apache.org/logを使用してパフォーマンスを記録できるログコンポーネントもあります

9) また、トレースにも使用でき、ルーティングのパフォーマンスを測定できるトレーサーがありますhttp://camel.apache.org/tracer

于 2012-12-21T13:42:26.390 に答える
7

ここには、最初のアイデアを追求するなど、多くの選択肢があります。

1)CamelのEventNotifierに簡単に接続できます。ここに基本的な例がありますhttp://camel.apache.org/eventnotifier-to-log-details-about-all-sent-exchanges.html

INFO  CamelContextFactoryBean        - Using custom EventNotifier with id: myLoggingEventNotifier and implementation: org.apache.camel.processor.MyLoggingSentEventNotifer@76bf9e
INFO  MyLoggingSentEventNotifer      - Took 1001 millis to send to: Endpoint[direct://bar]
INFO  MyLoggingSentEventNotifer      - Took 0 millis to send to: Endpoint[mock://result]
INFO  MyLoggingSentEventNotifer      - Took 1013 millis to send to: Endpoint[direct://start]

2)Fu​​seIDEを使用できますはこちら http://fusesource.com/docs/ide/2.1/tutorials/RiderTutorialTrace.html

3)JMXを使用してJavaインスタンスに接続でき、そこから取得できる情報がたくさんあります。

于 2012-12-21T13:34:07.977 に答える