2009-07-04 10 views
-1

私は、より高い抽象化層にログオンしてからLog4Jに類似したライブラリを探しています。メタ・ロギング・フレームワークを探しています

必要なロギング行ごとにフレームワークを1回呼び出すのではなく、アクションの開始時に1回、正常終了時に1回、例外が発生した場合に1回呼び出す必要があります。

ロギングフレームワークでは、start、end、duration、このアクションが5分で実行された回数、さまざまなモジュール/レイヤー(パッケージの命名規則で識別される)で費やされた回数を記録する必要があります。

このようなことはありますか? Javaで?

注:私は自分自身を実装する方法についてのヒントにはあまり興味がありません。私は今これをやっていて、私が車輪を再発明しているかどうかを知りたいだけです。

+0

を見ているのに、あなたは、あなたが完了したときに、これは一般的に使用できますか?触発される可能性がありますか –

答えて

2

SLF4Jプロジェクトのロギング設定では、プロファイラでいくつかの作業が行われていますが、十分に高いレベルであるとは確信していません。 :)

http://slf4j.org/extensions.html#profiler

+0

それはかなり近いですし、私が必要とするかなりのものを扱います。また、いくつかの良いアイデア。すばらしいです。 –

3

あなたの懸念に対応する既存のロギングフレームワークはわかりませんが(そういうフレームワークが存在しないというわけではありません...)、SpringやAspectJが提供するようなAOPメカニズムが役立つと思います君は。そのため、あなたはポイントカット/ウィービングの施設を再改造しているかどうかを確認する必要があります。

+0

いいえ私はそれらを使用するので私はしません –

4

「ロギング」フレームワークが必要ないように思えますが、「プロファイリング」フレームワークが必要です。

"アクション"という言葉の意味によっては、あなたが望むものがすでにJVMの一部になっている可能性があります...古いJVMPIとそれより新しいものをチェックしてください。JVMTI。 JVMでこれを使用して

events ("actions") you can trigger onのリストは、メソッドの出入り、投げたりキャッチ例外、スレッドの開始や終了、GCイベントなどが含まれています...

ビルトイン実装がhprofです。あなたがコマンドラインに便利な場合、それはあなたに何が起こっているのかのまともな画像を与えることができます...

http://www.yourkit.com/は良い商業製品であったが、私は長い間それを使用していません。

EclipseとNetbeansの両方持っているJVMTIのプラグインは、実行時間の長さ、あなたの方法のそれぞれが呼び出されたどのくらいの頻度を伝えることができるはずですこれらの日、そしてどのように多くのオブジェクト、彼らが作成および/または破壊する...

+0

あなたは正しいです。プロファイリングは正しい用語かもしれませんが、プログラミング言語レベルではなく、ドメインロジックレベルで使用します。私の行動は、 "saveOrder"のようなものです。基本的には、アプリケーションの種類に応じて、ユーザーまたはクライアントのいずれかによって起動されます。 –

関連する問題