[解決済み] log4jのログレベルを動的に変更する
2022-06-08 19:01:12
質問
私がアプリケーションを再展開する必要がないように、動的にlog4jログ・レベルを変更するための異なるアプローチは何ですか。変更はそれらの場合に永久的であるか。
どのように解決するのですか?
ログ レベルを変更するのは簡単です。設定の他の部分を変更すると、より深いアプローチが必要になります。
LogManager.getRootLogger().setLevel(Level.DEBUG);
のライフサイクルを通じて永続的に変更されます。
Logger
. 実行時にレベルを設定してもレベルの変更は維持されないため、再初期化時に設定が読み込まれて使用されます。
UPDATEです。
あなたがLog4j 2を使用している場合、あなたは以下の呼び出しを削除する必要があります。
setLevel
につき
ドキュメント
にあるように、実装クラスによって実現することができます。
logger.setLevel()または同様のメソッドへの呼び出しは API ではサポートされていません。アプリケーションはこれらを削除する必要があります。同等な機能は Log4j 2実装クラスで提供されるが、アプリケーションをLog4j 2内部での変更の影響を受けやすいままにしておくかもしれない。 アプリケーションをLog4j 2内部での変更に影響されやすくします。
関連
-
Dateが型に解決できない問題を解決する
-
VMの初期化中にエラーが発生しました java/lang/NoClassDefFoundError: java/lang/Object
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] Java Mapの各エントリを効率的に反復処理するには?
-
[解決済み] なぜゲッターとセッター/アクセッサーを使うのですか?
-
[解決済み] 文字列フォーマット:% vs. .format vs. f-stringリテラル
-
[解決済み] wait()とsleep()の違いについて
-
[解決済み] svn log -v' のように 'git log' にファイル名を表示させる方法
-
[解決済み】サーブレットはどのように動作するのですか?インスタンス化、セッション、共有変数とマルチスレッド
-
[解決済み】log4jで、ログを取る前にisDebugEnabledをチェックすると、パフォーマンスが向上する?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
エラー java.util.NoSuchElementException
-
スレッド "main "での例外をEclipseで解決 java.lang.Error: 未解決のコンパイル問題、コンパイラとパッケージの不整合
-
javaの実行中に「javaの例外が発生しました」と表示された場合はどうすればよいですか?
-
Eclipseで "XXXX "の解決策を(型に)解決することができない
-
JDKの設定時にjava.dllが見つからない、java SE Runtime Environmentが見つからない問題が発生しました。
-
プロジェクトの依存関係を解決できなかった 解決
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException: 1
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
Javaエラーメッセージがenclosingクラスでない
-
起動時にEclipseエラーが発生しました。起動中に内部エラーが発生しました。java.lang.NullPoin: "Javaツーリングの初期化 "中に内部エラーが発生しました。