2011-12-22 8 views
0
私はすべてのログが保存され、グラフに表示されているサーバにログを送信し、簡単なロガーを開発したい

のlog4jなどのパラメータ化されたログ

ロガーは、によって与えられた構造があるため、パラメータ化する必要がある

保存されたログを分析して表示するためのデータベースを開発しました。ログの

パラメータは、例えば、オーバーロードされたメソッドを用いて実装されている:

mylog.error(String jobname, String whatever); 
mylog.error(String jobname, String whatever, List<String> whatever); 

これは、必要なときにログが開発者によって実装される方法です。

私はlog4jをこのようなものに使うことができるのだろうか?

とにかく、私自身の簡単なログは、それらが保存されている私のサーバーにJSONでログを送信し、正常に動作しますが、その他

答えて

1

これはどのようにSLF4J作品です。アプリケーションからのロギングをSLF4Jで切り離し、Log4Jコネクタを使用して基礎となる実装として使用できます。つまり、SLF4Jの作成者は、LogbackをSLF4Jインターフェイスの理想的な実装として書きました。組織的にLog4Jに縛られていない場合は、使用することをお勧めします。

1

これを行うにはいくつかの方法があります。

Mapped Diagnostic Context (MDC)(とcomparison with NDC)を好む傾向がありますが、順序付きレンダリングが必要なときに表示するために独自のフォーマッタ拡張を書きましたが、

他のフレームワークも同様の機能を備えていますが、マップされたアプローチでは、ログ解析ツールやDB指向のログ作成に便利です。

+0

これは例に過ぎません。 log4jを使用してこのようにログすることは可能です:private static final Logger log = Logger ..... log.error(String string)< - 標準的なロギングとここに私のオーバーロードされたエラーメソッド:mylog.error(String string 、String何でも); log.error(文字列、文字列何でも、リスト何でも)でも – core2hack

+0

@ core2hack何の例ですか? Web上でMDCを使用する例があります(例:[this one](http://veerasundar.com/blog/2009/11/log4j-mdc-mapped-diagnostic-context-example-code/))。 –

関連する問題