Log 4 j入門
2941 ワード
Log 4 Jって何?
Log 4 JはApache財団の次のオープンソースのログ管理プロジェクトであり、ログの収集プロセスと収集粒度を高度にカスタマイズし、収集後のログの出力位置をコンソール、ファイル、データベース、さらにはリモートサーバに出力することができます.これらの操作はLog 4 Jのプロファイルで定義するだけで実現できます.非常に強力なログ収集ライブラリです.それ以外に、Log 4 Jは多言語互換を提供して、Java、Python、.Netなどの言語環境の下のサーバーの中で使用することができて、サービスクラスタのログに対して統一的に管理することができます.
Log 4 J学習
Log 4 Jの3つのコンポーネント: Logger(レコーダ):ログがどこに格納されているかにかかわらず、ログ(ログ・レベルに基づいて記録される)を記録します. Appender(エンクロージャ):ロガーに記録されたログを、プロファイルに指定された場所に保存し、ログのエンクロージャのみを処理します. Layout(レイアウト):ログをフォーマットして出力します.つまり、ログをより目立たせるために使用されます.もちろん、どのように計算するかは、プロファイルで設定します. 1つのLoggerには複数のAppenderがあり、同時に複数のデバイスに出力することができ、各Appenderには出力内容をフォーマットするLayoutがあります.
Loggerコンポーネント
log 4 j.rootLoggerというスーパークラスは永遠に存在し、LoggerクラスのgetRootLogger()メソッドを使用してこのオブジェクトの参照を得ることができます.
Loggerコンポーネントの継承関係:子クラスLoggerがログ・レベルを定義していない場合、親クラスのログ・レベルが継承されます. サブクラスLoggerのコンポーネントのadditivityがfalse(デフォルトはtrue)に設定されている場合、サブクラスは親のAppenderを継承しません.そうしないと、親のすべてのAppenderが継承されます. Appenderコンポーネント
Appenderは、ログをどこに出力するかを決定し、目的地をサポートします.コンソールコンソールコンソールコンソール ファイルFile GUIコンポーネント ソケットインタフェースサーバ(Remote Socket Server) NTのイベントレコーダ UNIXデーモンプロセス(あるプロセスに出力)(検証対象) Layoutコンポーネント
Layoutコンポーネントは、ログの出力フォーマットを決定します. org.apache.log 4 j.HTML Layoutログ をHtml形式で出力 org.apache.log 4 j.PatternLayoutカスタムPatternモード出力ログ org.apache.log 4 j.SimpleLayoutログ情報のレベルと、ログ文字列 org.apache.log 4 j.TTCCLayoutログ生成スレッド、時間、カテゴリなどの詳細 を含む
ログ・レベル
ログ・レベルは、次の5つに分けられます. fatal重大なエラーにより、システムがクラッシュする errorエラーが発生しましたが、システムは を実行できます. warn警告システムここで潜在的なエラーが発生する可能性がある info一般的なランタイム情報 debugデバッグ情報、粒度が細い 上記の5つの中レベルに加えて、2つの特殊なレベルのログ分類があります. offログを閉じ、最大レベル allログを開き、最低レベル 上記のログのレベルは、off>fatal>error>warn>info>debug>all当日に構成されたログレベルがinfoの場合、すべてのDebugログは出力されません.
Log 4 Jは、error、warn、info、debugの4種類を推奨しています
Log 4 J応用
アプリケーションについては、構成と使用にほかならないので、まずプログラムでLog 4 Jを構成する方法を見てみましょう.
Log 4 Jの構成
Log 4 JはXML構成とpropertiesファイルの2つの構成をサポートしているが、ここでは後述する.
ロガーの構成
参照先:
ログレベルLog 4 Jの使用
Log 4 JはApache財団の次のオープンソースのログ管理プロジェクトであり、ログの収集プロセスと収集粒度を高度にカスタマイズし、収集後のログの出力位置をコンソール、ファイル、データベース、さらにはリモートサーバに出力することができます.これらの操作はLog 4 Jのプロファイルで定義するだけで実現できます.非常に強力なログ収集ライブラリです.それ以外に、Log 4 Jは多言語互換を提供して、Java、Python、.Netなどの言語環境の下のサーバーの中で使用することができて、サービスクラスタのログに対して統一的に管理することができます.
Log 4 J学習
Log 4 Jの3つのコンポーネント:
Loggerコンポーネント
log 4 j.rootLoggerというスーパークラスは永遠に存在し、LoggerクラスのgetRootLogger()メソッドを使用してこのオブジェクトの参照を得ることができます.
Loggerコンポーネントの継承関係:
Appenderは、ログをどこに出力するかを決定し、目的地をサポートします.
Layoutコンポーネントは、ログの出力フォーマットを決定します.
ログ・レベル
ログ・レベルは、次の5つに分けられます.
Log 4 Jは、error、warn、info、debugの4種類を推奨しています
Log 4 J応用
アプリケーションについては、構成と使用にほかならないので、まずプログラムでLog 4 Jを構成する方法を見てみましょう.
Log 4 Jの構成
Log 4 JはXML構成とpropertiesファイルの2つの構成をサポートしているが、ここでは後述する.
ロガーの構成
#Log4J Logger
# root Logger
#log4j.rootLogger = [log level],[appender…]
log4j.rootLogger = INFO,console
# MyLogger Logger
log4j.logger.MyLogger = WARN # warn, info debug
# MyLogger Logger
log4j.logger.MyLogger.MySonLogger = ,file #”,file” MyLogger,
Appenderの構成# console Appender
log4j.appender.console = org.apache.log4j.ConsoleAppender
# log4j ,
# File Appender
log4j.appender.file = org.apache.log4j.FileAppender
#
log4j.appender.file.File = log.txt
Layoutの構成# file HTML
log4j.appender.file.layout = org.apache.log4j.HTMLLayout
# console SimpleLayout
log4j.appender.console.layout = org.apache.log4j.SimpleLayout
詳細はログ4 JのAPIを参照してください参照先:
ログレベルLog 4 Jの使用