] [ロギングフレームワークのlog4j、log4j2、logback、SLF4J及び他の一般的に使用されるロギングフレームワークファサード

まず、Javaプログラムで一般的に使用されるロギングフレームワークは、2つのカテゴリに分けることができます。

  1. コモンズロギング、SLF4J次のような抽象ファサード・フレームワークのない特定の実装、
  2. Log4jの、Log4jの2、Logback、7月次のようなフレームワークの特定の実装、

第二に、一般的なログフレームとの間の関係

  1. 大きな変化施さLog4j1とLog4j2、log4j2互換性のないlog4j1
  2. コモンズロギングおよびSLF4Jは(ファサードパターンは、一般的にもポジティブモード、アスペクトモードとして知られているデザインパターンを、エンジニアリングソフトウェアで使用されるログファサードである。それはとてもサブこと、インターフェースのセットの統一された高レベル・インターフェイス・サブシステムを提供しますシステムの使用が容易)。log4jのとLogbackは、ログの具体的な実装です。単にインタフェースとのインタフェースの実装として理解することができる、唯一のデカップリングだから、特定の実装に注意を必要とせずにインタフェースに注意を呼び出す必要があります

  3. より一般的な使用は、組み合わせて使用​​Logback SLF4Jとの組み合わせである、コモンズロギングのLog4jは、と組み合わせて使用​​しました
  4. LogbackはSLF4Jの使用を協力しなければなりません。LogbackとSLF4J同じ人なので、それは自明の互換性のあります

第三に、ログフレームのファサード

  ログファサード:一般的なアプリケーション、また、アスペクトモードとして知られているファサードファサードパターンモードでは、ファサードフレームワーク上のログは、特定のインタフェースを実装せずにログ関連の関数のセットを提供し、外観モードの私のブログのデザインモードを参照してください。フレームワークは、それはロギングのための具体的な実施体制を呼び出します。そのファサードは、互換性のある実装フレームワークの自然対数をログに記録します。ログのファサードは、SLF4Jコモンズログの典型的なものです

  ログファサードを使用する利点:

  ファサード・ログは、フレームと、特定のロギングシステム、及びロギングフレームワークファサード・フレームワークアプリケーションログによって具現デカップリングシステム間のクロスです。特定の変更を達成するためのフレームワークをログに記録する方法に関係なくに沿って、システムログの記録機能には影響を与えませんが、システムコードを変更する必要はありません「オープン - 。クローズドの原則」

  コモンズロギング:

    Apacheのコモンズロギングは、ロギングパッケージのためのJavaベースのロギングユーティリティ、プログラミングモデルや他のツールです。これは、ラッパーの実装と実現をログインし、他のツールでAPIを提供します

  SLF4J:

    単純なJavaログファサード(Java用の単純なロギングファサード、SLF4J略称)、プログラミングインターフェースは、外観に実装フレームモードロギングパッケージされます。ロギングフレームワークは、あなたがソフトウェアの展開を使用したいとき、私たちは現在、主支持JavaロギングAPIですLog4jのとlogbackや他のフレームワークを決めることができます。MITライセンスの下でリリース。SLF4Jの著者は、Log4jのとLogback著者CekiGülcüです

第四に、ロギング実装フレームワーク

  7月

    Java1.4公式ログ実現以来のJava Utilのロギング、

  Laog4j

    ApacheのLog4jには、Javaベースのロギングツールです。今では、Apache Software Foundationのプロジェクトがあり、CekiGülcüのは、最初に作られています

  Log4j2

    ApacheのLog4jの2 ApacheはLog4jのアップグレード製品の開発で、互換性のLog4jではありません

  Logback

    Logbackは、ロギングフレームワークで、Log4jには、すべてのCekiGülcüの手から、同じ著者であります

第五に、Javaロギング・フレームワークを選択してください

  1. コストを考慮:無料Logbackドキュメント。すべてのドキュメントは、包括的なLogbackは部分的にしか自由なドキュメントを提供し、有料の文書を購入するユーザーが必要なのLog4Jとは異なり、無料で提供されます
  2. オーバーヘッドリソース:コモンズはSLF4Jの高コストに比べログ
  3. パフォーマンス:LogbackはLog4jの、Log4j2は、より良い性能を持って比較しました。Logbackは、請求:このような記録動作ログステートメントかどうかを決定するようないくつかのキー操作が、その性能は大幅に改善されています。Log4Jの30ナノ秒で必要とされている間、この動作は、Logback 3ナノ秒を必要とします。レコーダ(ロガー)より速い速度を作成LogBack:13ミリ秒、23ミリ秒は、Log4Jのに必要とされます。さらに重要なことは、既存のレコーダーだけで94ナノ秒と、1月23日までの時間を短縮するために2234ナノ秒Log4Jの必要性を取得します。7月には、パフォーマンスの向上と比較することは重要です

参考:https://blog.csdn.net/xintonghanchuang/article/details/90752323

 

おすすめ

転載: www.cnblogs.com/Y-S-X/p/12142408.html