Log 4 j 2プロファイルlog 4 j 2.xml(一)
6614 ワード
変換元:https://blog.csdn.net/ly199108171231/article/details/80534286
一、構成全解
1.プロファイルの名前およびプロジェクト内の保存場所について
log4j 2.xバージョンでは1のようにサポートされていません.xの.properties接尾辞のファイル構成方式、2.xバージョンプロファイルの接尾辞名は「.xml」、「.json」または「.jsn」のみである.
システムがプロファイルを選択する優先順位は、次のとおりです.
(1).classpathの下の名前はlog 4 j 2-testです.jsonまたはlog 4 j 2-test.jsnのファイル
(2).classpathの下の名前はlog 4 j 2-testです.xmlのファイル
(3).classpathの下の名前はlog 4 j 2である.jsonまたはlog 4 j 2.jsnのファイル
(4).classpathの下の名前はlog 4 j 2である.xmlのファイル
一般的にlog 4 j 2をデフォルトで使用する.xmlで名前を付けます.ローカルでテストする場合はlog 4 j 2-test.xmlはclasspathに配置するが、本環境ではlog 4 j 2を使用する.xmlでは、log 4 j 2-testはパッケージ配置時にパッケージしない.xmlでいいです.
2.デフォルトのプロファイル
3.プロファイルノードの解析
(1).ルートノードConfigurationにはstatusとmonitorrintervalの2つの属性があり、AppendersとLoggersの2つのサブノードがある(複数のAppenderとLoggerを定義できることを示す).
statusは、log 4 j自体の印刷ログのレベルを指定するために使用されます:ALL,DEBUG,INFO,WARN,ERROR,FATAL,OFF
出力レベルの種類:OFFが最上位レベルになったログ情報FATALがアプリケーションの中止を招く可能性のあるクリティカルイベントエラーERRORがクリティカルエラー主にプログラムのエラーWARNが一般的な警告である、例えばsessionがINFOを失ったのが一般的に表示する情報である、例えば、DEBUGがプログラムであるデバッグ情報TRACEがDEBUGよりも細粒度のイベント情報ALLが最下位であることを登録すると、すべてのレベルのログが開く
monitorintervalはlog 4 jの自動再構成の監視間隔時間を指定するために使用され、単位はs、最小は5 sである.
(2).Appendersノード、一般的な3つのサブノード:Console、RollingFile、File.
コンソールノードは、コンソールに出力Appenderを定義するために使用される.
name:Appenderの名前を指定します.
target:SYSTEM_OUTまたはSYSTEM_ERR、一般的にはデフォルト設定のみ:SYSTEM_OUT.
PatternLayout:出力フォーマット、デフォルト:%m%n.
Fileノードは、指定する場所に出力ファイルのAppenderを定義する.
name:Appenderの名前を指定します.
FileName:出力ログの宛先ファイルにフルパスのファイル名を指定します.
PatternLayout:出力フォーマット、デフォルト:%m%n.
RollingFileノードは、指定したサイズを超えて古い作成した新しいAppenderを自動的に削除することを定義します.
name:Appenderの名前を指定します.
FileName:出力ログの宛先ファイルにフルパスのファイル名を指定します.
PatternLayout:出力フォーマット、デフォルト:%m%n.
FilePattern:新しいログファイルの名前のフォーマットを指定します.
Policies:ログをスクロールするポリシーを指定します.新しいログファイルの出力ログはいつ行われますか.
TimeBasedTriggeringPolicy:Policiesサブノード、時間のスクロールポリシーに基づいて、intervalプロパティはどのくらいスクロールするかを指定するために使用され、デフォルトは1 hourです.modulate=trueは時間を調整するために使用されます.例えば、今は朝3 am、intervalは4です.では、最初のスクロールは4 am、次は8 am、12 amです.7 amではなく
SizeBasedTriggeringPolicy:Policiesサブノードは、指定ファイルサイズのスクロールポリシーに基づいて、size属性を使用して各ログファイルのサイズを定義.
DefaultRolloverStrategy:同じフォルダの下に最大数個のログファイルがある場合に最も古いものを削除し、新しいものを作成します(maxプロパティを使用).
(3).Loggersノードは、RootとLoggerの2つが一般的です.
1、Rootノードはプロジェクトのルートログを指定するために使用され、ロガーが単独で指定されていない場合、このRootログ出力がデフォルトで使用されます
レベル:ログ出力レベル、合計8レベル、低から高:AllAppenderRef:Rootのサブノードで、ログがどのAppenderに出力かを指定します.
2、Loggerノードは、指定したパッケージの下のclassに異なるログレベルを指定するなど、ログの形式を個別に指定します.
レベル:ログ出力レベル、合計8レベル、低から高:Allname:ロガーが適用するクラスまたはクラスが存在するパッケージの全パスを指定し、Rootノードから継承する.
AppenderRef:Loggerのサブノードで、ログがどのAppenderに出力されるかを指定します.指定されていない場合、Rootからデフォルトで継承されます.指定した場合、指定したこのAppenderとRootのAppenderで出力されます.この場合、Loggerのadditivity=「false」を設定してカスタムAppenderでのみ出力できます.
(4).ログについて
全部で8つのレベルがあり、低から高まで:AllAll:すべてのログを開くための最下位レベルです.
Trace:追跡です.プログラムが以下に進むと、trace出力を書くことができます.だからtraceは特に多いはずですが、大丈夫です.最低ログレベルを設定して出力させません.
Debug:細粒度情報イベントはアプリケーションのデバッグに非常に役立つことを指摘する.
Info:メッセージは粗粒度レベルでアプリケーションの実行過程を強調する.
Warn:警告およびwarn以下のレベルのログを出力する.
Error:エラーメッセージログを出力.
Fatal:重大なエラーイベントごとにアプリケーションの終了を招くログを出力する.
OFF:最高レベルのもので、すべてのログ記録を閉じる.
プログラムは設定されたレベル以上のログを印刷し、設定されたログレベルが高いほど、印刷されたログは少なくなります.
4.完全なlog 4 j 2を比較する.xml構成テンプレート
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log"> 20 21 22 23 24 25 26 27 28 29 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log"> 30 31 32 33 34 35 36 37 38 39 40 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log"> 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
一、構成全解
1.プロファイルの名前およびプロジェクト内の保存場所について
log4j 2.xバージョンでは1のようにサポートされていません.xの.properties接尾辞のファイル構成方式、2.xバージョンプロファイルの接尾辞名は「.xml」、「.json」または「.jsn」のみである.
システムがプロファイルを選択する優先順位は、次のとおりです.
(1).classpathの下の名前はlog 4 j 2-testです.jsonまたはlog 4 j 2-test.jsnのファイル
(2).classpathの下の名前はlog 4 j 2-testです.xmlのファイル
(3).classpathの下の名前はlog 4 j 2である.jsonまたはlog 4 j 2.jsnのファイル
(4).classpathの下の名前はlog 4 j 2である.xmlのファイル
一般的にlog 4 j 2をデフォルトで使用する.xmlで名前を付けます.ローカルでテストする場合はlog 4 j 2-test.xmlはclasspathに配置するが、本環境ではlog 4 j 2を使用する.xmlでは、log 4 j 2-testはパッケージ配置時にパッケージしない.xmlでいいです.
2.デフォルトのプロファイル
3.プロファイルノードの解析
(1).ルートノードConfigurationにはstatusとmonitorrintervalの2つの属性があり、AppendersとLoggersの2つのサブノードがある(複数のAppenderとLoggerを定義できることを示す).
statusは、log 4 j自体の印刷ログのレベルを指定するために使用されます:ALL,DEBUG,INFO,WARN,ERROR,FATAL,OFF
出力レベルの種類:OFFが最上位レベルになったログ情報FATALがアプリケーションの中止を招く可能性のあるクリティカルイベントエラーERRORがクリティカルエラー主にプログラムのエラーWARNが一般的な警告である、例えばsessionがINFOを失ったのが一般的に表示する情報である、例えば、DEBUGがプログラムであるデバッグ情報TRACEがDEBUGよりも細粒度のイベント情報ALLが最下位であることを登録すると、すべてのレベルのログが開く
monitorintervalはlog 4 jの自動再構成の監視間隔時間を指定するために使用され、単位はs、最小は5 sである.
(2).Appendersノード、一般的な3つのサブノード:Console、RollingFile、File.
コンソールノードは、コンソールに出力Appenderを定義するために使用される.
name:Appenderの名前を指定します.
target:SYSTEM_OUTまたはSYSTEM_ERR、一般的にはデフォルト設定のみ:SYSTEM_OUT.
PatternLayout:出力フォーマット、デフォルト:%m%n.
Fileノードは、指定する場所に出力ファイルのAppenderを定義する.
name:Appenderの名前を指定します.
FileName:出力ログの宛先ファイルにフルパスのファイル名を指定します.
PatternLayout:出力フォーマット、デフォルト:%m%n.
RollingFileノードは、指定したサイズを超えて古い作成した新しいAppenderを自動的に削除することを定義します.
name:Appenderの名前を指定します.
FileName:出力ログの宛先ファイルにフルパスのファイル名を指定します.
PatternLayout:出力フォーマット、デフォルト:%m%n.
FilePattern:新しいログファイルの名前のフォーマットを指定します.
Policies:ログをスクロールするポリシーを指定します.新しいログファイルの出力ログはいつ行われますか.
TimeBasedTriggeringPolicy:Policiesサブノード、時間のスクロールポリシーに基づいて、intervalプロパティはどのくらいスクロールするかを指定するために使用され、デフォルトは1 hourです.modulate=trueは時間を調整するために使用されます.例えば、今は朝3 am、intervalは4です.では、最初のスクロールは4 am、次は8 am、12 amです.7 amではなく
SizeBasedTriggeringPolicy:Policiesサブノードは、指定ファイルサイズのスクロールポリシーに基づいて、size属性を使用して各ログファイルのサイズを定義.
DefaultRolloverStrategy:同じフォルダの下に最大数個のログファイルがある場合に最も古いものを削除し、新しいものを作成します(maxプロパティを使用).
(3).Loggersノードは、RootとLoggerの2つが一般的です.
1、Rootノードはプロジェクトのルートログを指定するために使用され、ロガーが単独で指定されていない場合、このRootログ出力がデフォルトで使用されます
レベル:ログ出力レベル、合計8レベル、低から高:All
2、Loggerノードは、指定したパッケージの下のclassに異なるログレベルを指定するなど、ログの形式を個別に指定します.
レベル:ログ出力レベル、合計8レベル、低から高:All
AppenderRef:Loggerのサブノードで、ログがどのAppenderに出力されるかを指定します.指定されていない場合、Rootからデフォルトで継承されます.指定した場合、指定したこのAppenderとRootのAppenderで出力されます.この場合、Loggerのadditivity=「false」を設定してカスタムAppenderでのみ出力できます.
(4).ログについて
全部で8つのレベルがあり、低から高まで:All
Trace:追跡です.プログラムが以下に進むと、trace出力を書くことができます.だからtraceは特に多いはずですが、大丈夫です.最低ログレベルを設定して出力させません.
Debug:細粒度情報イベントはアプリケーションのデバッグに非常に役立つことを指摘する.
Info:メッセージは粗粒度レベルでアプリケーションの実行過程を強調する.
Warn:警告およびwarn以下のレベルのログを出力する.
Error:エラーメッセージログを出力.
Fatal:重大なエラーイベントごとにアプリケーションの終了を招くログを出力する.
OFF:最高レベルのもので、すべてのログ記録を閉じる.
プログラムは設定されたレベル以上のログを印刷し、設定されたログレベルが高いほど、印刷されたログは少なくなります.
4.完全なlog 4 j 2を比較する.xml構成テンプレート
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log"> 20 21 22 23 24 25 26 27 28 29 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log"> 30 31 32 33 34 35 36 37 38 39 40 filePattern="${sys:user.home}/logs/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log"> 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
kfk-ppubg01cn-01.svc.wecash.net:9092,kfk-ppubg01cn-02.svc.wecash.net:9092,kfk-ppubg01cn-03.svc.wecash.net:9092