2011-01-17 9 views
3

アイデアは、アプリケーション/ツールを設計して実行時にアプリケーションの実行フローをデバッグ/表示するためのAOPを利用することです。まず、メソッド呼び出しの開始時と終了時に単純なデータ(状態)ダンプが必要なデータ収集を行います。AspectJを使用してエンタープライズJavaアプリケーションをデバッグする

ターゲットはアプリケーション開発者ではなく、実行フローが役立つ可能性が高い上位レベルのビジネスアナリストまたは上位レベルのサポート担当者です。ランタイムアプリケーションフローは、特に構成ロードシステムにおける新規開発者向けのアプリケーションの学習曲線を減らすのにも役立ちます。

私は、使用できるツール/アプリケーションがすでに存在するかどうかを知りたいと思っていました。または、これが理にかなっている場合は、これを達成するためのよりよい方法があります。

+1

これは価値があるかもしれません:http://maintainj.com/あるいは、あなたは類似のものを書くことができます。 – Dave

+0

良いツールのように見えます。最初のスペックは、私の心の中にあったものを正確に表しています。リンクありがとう。 –

答えて

3

Spring Insight(http://www.springsource.org/insight)から始めて、独自のプラグインを追加して、ビジネスアナリストやサポートスタッフに適したデータを収集することができます。それがニーズを満たしていない場合、あなたは独自のカスタムアスペクトを書くことができます。それは難しいことではありません。

+0

+1は、春の洞察力を指摘します。あなたが提供したリンクは機能していません。 http://static.springsource.com/projects/tc-server/6.0/devedition/cinintro.html –

1

ramnivasが提案したように独自の側面を書くこともできますが、ユーザーからの要求に備えて、ヒットする必要がないように側面をアプリケーションにコンパイルすることもできます実行時には、興味のある実行フローやメソッドグループを選択するだけで、サーバーを呼び出して必要な情報を与える変数を設定するだけです。

アスペクトの書き方は簡単ですが、再コンパイルを制限するには、Webサービスが呼び出された時点から行われたすべての呼び出しのログが必要な場合など、ユーザーが何を望むかを知りたい場合があります。それがデータベースに到達したら、それを構築することができますが、これを知ることは簡単になります。

それ以外の場合は、変数が設定されていない場合は何も行わず、終了したら変数を設定解除することがあります。

また、どのタイプのログを採取できるのか、どのユーザーにどのような情報を提供するのかによって、より有用な情報につながる可能性があります。

+0

私は、アスペクトはそのようなツールを設計する便利な方法だと思います。 –

+0

AOP(Aspect Oriented Programming)は、すべての関数にコードを手動で入れるのを避けることができるので便利ですが、何が起こっているのかを視覚化するのは難しいです。また、実際にクラスを変更することなく、アスペクトを追加/削除することができます。 –

関連する問題