2009-09-29 12 views
7

私はWebアプリケーションでLog4jを使用するつもりです。 Log4jの使い方と、私のアプリケーションでの使い方前もって感謝します。Log4j APIの使用方法は?

答えて

12

Log4J home pageは、その使用の背後にある最良の概要と根拠を提供していると思います。 log4jので

アプリケーションのバイナリを変更せずに、実行時に ログを有効にすることも可能です。 log4j パッケージは、これらの 文が出荷コード のままで、重い処理を行わずに済むように設計されています。 ログの振る舞いは、アプリケーション バイナリに触れることなく、 の設定ファイルを編集して制御することができます。

ログには、アプリケーション の詳細コンテキストが含まれています。 のエラーが発生します。一方、 のテストでは、品質保証とアプリケーションへの信頼度が になります。ログ とテストを混同しないでください。 これは相補的です。 を賢く使用すると、 必須ツールであることがわかります。

これを追加するには、Log4Jを使用して、ログオンを動的に切り替えることができます。フォーマットを動的に変更することができます(タイムスタンプの日付スタンプが必要ですか?)、コードを変更することなくロギングの場所(コンソールからファイル、データベースへ)を変更できます。

+1

複数のソースに一度にログインすることもできます。私が今作業しているアプリケーションでは、アプリケーションをテストしているときに、いつもログに記録されている標準のログファイルとともにコンソールの両方にログオンします(デバッグ情報とポップアップするエラーが表示されます)。 。かなり便利です。 –

1

log4jの美しさは、アペンダーとレイアウトのアーキテクチャにあります。前回のポスターで述べたように、アプリケーションのロギングの面倒を簡単に変更できます。ほとんどの場合、単純な構成の問題です。私が追加する用途の1つに、コードベースに触れることなくアプリケーションに追加できる集中型のロギングがあります。たとえば、thisを見てください。

1

最も基本的なレベルでは、コード内のSystem.out.printlnの代わりに考えることができます。 System.out.printlnよりも優れているのはなぜですか?理由は数多くあります。

まず、System.out.printlnは、通常はコンソールウィンドウである標準出力に出力します。 Log4jの出力はコンソールに送られますが、電子メールサーバー、データベーステーブル、ログファイル、またはその他のさまざまな宛先にも移動できます。

Log4jのもう1つの利点は、さまざまなレベルのログを設定できることです。レベルは階層的で、TRACE、DEBUG、INFO、WARN、ERROR、およびFATALのようになります。特定のログレベルを設定すると、メッセージはそのレベルとそれより上のすべてのレベルでログに記録され、それより下のログレベルには記録されません。たとえば、ログレベルがERRORに設定されている場合は、エラーと致命的なメッセージを記録します。ログレベルがINFOに設定されている場合は、情報、警告、エラー、および致命的なメッセージをログに記録します。通常、ローカルマシンで開発するときは、ログレベルをDEBUGに設定することをお勧めします。また、Webアプリケーションをデプロイするときは、ログレベルをINFO以上に設定して、エラーログをデバッグメッセージ。

Log4jは他の素晴らしいことを行うことができます。たとえば、特定のクラスが警告を大量に出力した場合、そのクラスのログレベルをERRORに設定して、すべての警告メッセージを抑止できるように、特定のJavaクラスのレベルを設定できます。

Read more...

関連する問題