[java][57]log 4 jに関するまとめ
2376 ワード
1.log 4 jにおけるDEBUG、INFO、WARN、ERROR、FATALの違い
参照先:https://blog.csdn.net/qq_18783269/article/details/62881081
全部で5つのレベルに分けられます.
DEBUG
、
INFO
、
WARN
、
ERROR
および
FATAL
.この5つのレベルには順序があり、
DEBUG < INFO < WARN< ERROR < FATAL
ああ、それを理解することが大切だ.
Log4j
ルールがあります.レベルが
P
、レベルが1つ発生した場合
Q
比
P
高い場合は起動できます.そうしないと遮断されます.
DEBUG:
このレベルが最も低いのは、一般的には、システムの実際の実行中に出力されないことが多い.したがって、このレベルの情報は、デバッグ時にシステムの動作状態をより詳細に理解するのに役立つと思うものは、変数の値など、任意に使用することができます.
INFO
:これは、システムの現在のステータスをエンドユーザーにフィードバックするために使用されるべきです.
ということで、ここで出力される情報は、エンドユーザに対して実用的な意味を持つべきであり、つまりエンドユーザがどういう意味であるかを見分けることができるようにしなければならない.ある角度から言えば、
Info
出力された情報はソフトウェア製品の一部(インタラクティブなインタフェースの文字のように)と見なすことができるので、慎重に対処する必要があり、勝手にしてはいけない.
WARN
、ERRORとFATAL:警告、エラー、重大エラー
ああ、この3つはすべてシステムの運行時に1つの異常な状態を検出したはずで、彼らの間の区別、区別するのは本当にそんなに簡単なことではありません.私は大体このように区別しています.
警告とは、この時点でいくつかの修復的な作業を行うべきで、システムを正常な状態に戻すこともできるはずで、システムは引き続き稼働することができるはずです.
エラーとは、いくつかの修復的な作業を行うことができますが、システムが正常に動作するかどうかは確定できません.システムは今後の段階で、現在のこの問題によって修復できないエラー(ダウンタイムなど)を引き起こす可能性がありますが、停止するまで深刻な問題が発生しない可能性があります.
いわゆる
Fatal
ああ、それはかなり深刻で、このエラーはもう修復できないことは間違いなく、システムが稼働し続けると、必然的にますます混乱することは間違いありません.この場合の最善の措置は、システムの状態を正常に回復しようとするのではなく、システムの有効なデータをできるだけ保持し、動作を停止することです.
つまり、Warn、Error、Fatalのどちらを選択するかは、現在の問題が今後に及ぼす可能性のある影響によって決まり、今後にほとんど影響がない場合は警告し、今後深刻な問題が発生すると確信すればFatalの、どうなるか分からない場合はErrorの.
2.tomcatのlog 4 j 2.xmlのerrorレベルをdebugレベルに変更して、より詳細なログを出力できます.一般的にdebugフォルダでは、フォルダがない場合はlog 4 j 2.xmlの具体的な設定を表示します.
3. mavenエンジニアリングでlog 4 jエラーを報告
1)導入したmavenエンジニアリングエラー:java.lang.NoClassDefFoundErrorについて:org/apache/log 4 j/evel......Class path contains multiple SLF 4 J bindings. エラーの原因:パッケージの競合.
参照先:https://blog.csdn.net/blomer/article/details/20619889
解決:
pom.xmlの以下の2箇所をコメントします
参照先:https://blog.csdn.net/qq_18783269/article/details/62881081
全部で5つのレベルに分けられます.
DEBUG
、
INFO
、
WARN
、
ERROR
および
FATAL
.この5つのレベルには順序があり、
DEBUG < INFO < WARN< ERROR < FATAL
ああ、それを理解することが大切だ.
Log4j
ルールがあります.レベルが
P
、レベルが1つ発生した場合
Q
比
P
高い場合は起動できます.そうしないと遮断されます.
DEBUG:
このレベルが最も低いのは、一般的には、システムの実際の実行中に出力されないことが多い.したがって、このレベルの情報は、デバッグ時にシステムの動作状態をより詳細に理解するのに役立つと思うものは、変数の値など、任意に使用することができます.
INFO
:これは、システムの現在のステータスをエンドユーザーにフィードバックするために使用されるべきです.
ということで、ここで出力される情報は、エンドユーザに対して実用的な意味を持つべきであり、つまりエンドユーザがどういう意味であるかを見分けることができるようにしなければならない.ある角度から言えば、
Info
出力された情報はソフトウェア製品の一部(インタラクティブなインタフェースの文字のように)と見なすことができるので、慎重に対処する必要があり、勝手にしてはいけない.
WARN
、ERRORとFATAL:警告、エラー、重大エラー
ああ、この3つはすべてシステムの運行時に1つの異常な状態を検出したはずで、彼らの間の区別、区別するのは本当にそんなに簡単なことではありません.私は大体このように区別しています.
警告とは、この時点でいくつかの修復的な作業を行うべきで、システムを正常な状態に戻すこともできるはずで、システムは引き続き稼働することができるはずです.
エラーとは、いくつかの修復的な作業を行うことができますが、システムが正常に動作するかどうかは確定できません.システムは今後の段階で、現在のこの問題によって修復できないエラー(ダウンタイムなど)を引き起こす可能性がありますが、停止するまで深刻な問題が発生しない可能性があります.
いわゆる
Fatal
ああ、それはかなり深刻で、このエラーはもう修復できないことは間違いなく、システムが稼働し続けると、必然的にますます混乱することは間違いありません.この場合の最善の措置は、システムの状態を正常に回復しようとするのではなく、システムの有効なデータをできるだけ保持し、動作を停止することです.
つまり、Warn、Error、Fatalのどちらを選択するかは、現在の問題が今後に及ぼす可能性のある影響によって決まり、今後にほとんど影響がない場合は警告し、今後深刻な問題が発生すると確信すればFatalの、どうなるか分からない場合はErrorの.
2.tomcatのlog 4 j 2.xmlのerrorレベルをdebugレベルに変更して、より詳細なログを出力できます.一般的にdebugフォルダでは、フォルダがない場合はlog 4 j 2.xmlの具体的な設定を表示します.
3. mavenエンジニアリングでlog 4 jエラーを報告
1)導入したmavenエンジニアリングエラー:java.lang.NoClassDefFoundErrorについて:org/apache/log 4 j/evel......Class path contains multiple SLF 4 J bindings. エラーの原因:パッケージの競合.
参照先:https://blog.csdn.net/blomer/article/details/20619889
解決:
pom.xmlの以下の2箇所をコメントします
mavenプロジェクトを更新してから、実行して、ok!