Log4j-overview
提供:Dev Guides
log4j-概要
log4jは、Javaで記述された信頼性が高く、高速で柔軟なロギングフレームワーク(API)であり、Apacheソフトウェアライセンスの下で配布されます。
log4jは、C、C ++、C#、Perl、Python、Ruby、およびEiffel言語に移植されています。
log4jは、実行時に外部構成ファイルを使用して高度に構成できます。 優先度のレベルでロギングプロセスを表示し、データベース、ファイル、コンソール、UNIX Syslogなどのさまざまな宛先にロギング情報を送信するメカニズムを提供します。
log4jには3つの主要なコンポーネントがあります。
- ロガー:ロギング情報をキャプチャします。
- appenders :さまざまな優先送信先にログ情報を公開します。
- layouts :ロギング情報をさまざまなスタイルでフォーマットします。
log4jの歴史
- 1996年の初めに、E.UのトレースAPIとして開始されました。 SEMPER(ヨーロッパ向けのSecure Electronic Marketplace)プロジェクト。
- 数え切れないほどの機能強化といくつかの化身の後、最初のAPIはJavaの一般的なロギングパッケージであるlog4jに進化しました。
- このパッケージは、オープンソースイニシアティブによって認定された本格的なオープンソースライセンスであるApacheソフトウェアライセンスの下で配布されます。
- 完全なソースコード、クラスファイル、ドキュメントを含む最新のlog4jバージョンは、http://logging.apache.org/log4j/にあります。
log4jの機能
- スレッドセーフです。
- 速度が最適化されています。
- 名前付きロガー階層に基づいています。
- ロガーごとに複数の出力アペンダーをサポートします。
- 国際化をサポートします。
- 事前に定義された一連の施設に限定されません。
- ロギング動作は、構成ファイルを使用して実行時に設定できます。
- Javaの例外を最初から処理するように設計されています。
- 複数、つまりALL、TRACE、DEBUG、INFO、WARN、ERROR、FATALのレベルを使用します。
- ログ出力の形式は、_Layout_クラスを拡張することで簡単に変更できます。
- ログ出力のターゲットと書き込み戦略は、Appenderインターフェイスの実装によって変更できます。
- フェールストップです。 ただし、配信を確実に行うように努めていますが、log4jは各ログステートメントが宛先に配信されることを保証しません。
ロギングの長所と短所
ロギングは、ソフトウェア開発の重要なコンポーネントです。 適切に作成されたロギングコードは、迅速なデバッグ、簡単なメンテナンス、およびアプリケーションの実行時情報の構造化されたストレージを提供します。
ロギングには欠点もあります。 アプリケーションの速度が低下する可能性があります。 冗長すぎると、スクロール失明を引き起こす可能性があります。 これらの懸念を軽減するために、log4jは信頼性、高速性、拡張性を備えた設計になっています。
ロギングがアプリケーションの主な焦点になることはめったにないため、log4j APIは理解しやすく使いやすいように努めています。