log4j によるログの柔軟性: 可変コンテンツを持つ複数のログ ファイルの構成
log4j によるログの領域では、多用途かつ対象を絞ったログ ファイルが必要です。ロギングメカニズムが頻繁に発生します。このようなシナリオの 1 つは、複数のログ ファイルの作成を含み、各ログ ファイルには特定のターゲット クラスの異なるレベルのログ情報が含まれます。
Log4j の構成可能なログ レベル
これを実現するには、log4jは、それぞれが特定のしきい値レベルで定義された複数のアペンダーを構成する機能を提供します。しきい値レベルは、アペンダーが処理する最小ログ レベルを決定します。異なるしきい値レベルを設定すると、重大度に基づいてログ メッセージを異なるアペンダにルーティングできます。
複数のログ ファイルの作成
たとえば、INFO 以上をすべてキャプチャするにはメッセージを 1 つのログ ファイルに保存し、クラスのサブセットのすべての DEBUG メッセージを別のファイルに保存する場合は、次の log4j 設定を構成できます:
log4j.rootLogger=QuietAppender, LoudAppender, TRACE
この行はルート ロガーを定義します。これは、特定のロガー設定によってオーバーライドされない限り、すべてのクラスに適用されます。 INFO 以上のメッセージには「QuietAppender」、DEBUG 以上のメッセージには「LoudAppender」、すべてのメッセージには「TRACE」 (特別なアペンダについては後述します) という 3 つのアペンダが割り当てられます。
log4j.appender .QuietAppender=org.apache.log4j.RollingFileAppender
log4j.appender.QuietAppender.Threshold=INFO
log4j.appender.QuietAppender.File =quiet.log
QuietAppender は、INFO および上記のメッセージを「quiet.log」ファイルに追加するように構成されています。
log4j.appender.LoudAppender=org.apache .log4j.RollingFileAppender
log4j.appender.LoudAppender.Threshold=DEBUG
log4j.appender.LoudAppender.File=loud.log
LoudAppender は、DEBUG 以降のメッセージを「loud.log」ファイルに追加するように構成されています。
log4j.logger.com.yourpackage.yourclazz=TRACE
この行は、「com.yourpackage」パッケージ内の特定のクラスのカスタム ロガーを追加します。これは、ルート ロガー構成をオーバーライドし、しきい値を TRACE に設定し、ルート ロガーまたはアペンダーに設定されたしきい値レベルに関係なく、このクラスのすべてのメッセージがログに記録されるようにします。
これらの構成を組み合わせることで、次のことを実現できます。重大度とターゲット クラスに基づいてロギング メッセージを分離し、特定のユースケースに対応するためにさまざまな内容を持つ複数のログ ファイルを作成する、カスタマイズされたロギング機能。
以上がlog4j を使用して、ログ レベルとターゲット クラスに基づいて内容が異なる複数のログ ファイルを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。