2011-11-11 10 views

答えて

0

私はあなたがデバッグログについて話していると思いますか? log4jを使用します。

if (log.isDebugEnabled()) { 
    log.debug("xxxxxxxxxxxxxxxxxxxxxxx"); 
} 

UPDATE:log4jは、特定のクラスのlog levelを設定することができます:核心ザラザラのデバッグレベル:異なるレベルでlog4j.properties

log4j.logger.com.test.Test=DEBUG 
+0

私のクエストオンは、実際に私のロギングが「外部」ロギングとどのように一致するかを示します。彼らはすでにアプリにログレベルを持っている。また、API呼び出しのログを別に設定する必要があります。 – user1041035

+0

これはlog4jができることです、私の更新された答えを確認してください。 –

+0

ありがとう、これは大いに役立ちます。 – user1041035

2
  1. ログに次のように置きます詳細、有用な情報のための情報、悪いことを警告する。
  2. インターフェイスを介してAPIを公開してテスト手段を提供し、簡単に嘲笑することができます。これにより、さまざまなシナリオをAPI内およびそのAPIを使用しているコードの両方でテストすることができます。
  3. 予想外のニーズを可能な限り満たすために、(同じインターフェイスを使用して)拡張ポイントを提供します。 (あなたはそれらすべてを手に入れることはできませんが、その方法です)
  4. APIの機能の大部分を実行するコードサンプルおよび/または単体テストを提供します。
  5. については、なぜのものが動作するのかを説明する文書を提供します。コードはの動作方法をで説明しています。
0

JARを出荷しているのであれば、最初はlog4jに依存しないようにしてください。ただし、プラグインのユーザーには独自のLoggerFactoryを使用させることができます。コードで取得したすべての「ロガー」は、log4jから取得するのと同じ方法で(たとえばクラス名を渡すことによって)そのファクトリを通じて取得され、同様のレベルを持つ必要があります。

このようにしてlog4jを使用したいと思っている顧客は、他のロガーを使用している顧客もjiffyでプラグインできます。

関連する問題