log4jのログレベルを動的に変更する方法は何ですか
ログ4jで動的にログレベルを変更するには、org.apache.log4j.LogManager クラスと org.apache.log4j.Level クラスを使用します。
まず、LogManagerクラスのgetLoggerメソッドで、対応するLoggerオブジェクトを取得します。例えば、「com.example.MyClass」という名前のログレベルを変更するには、以下のコードを利用できます。Loggerオブジェクトの取得:
ロガーlogger = LogManager.getLogger(“com.example.MyClass”);
次に、Level クラスの valueOf メソッドを使用して、ログレベル名を対応する Level オブジェクトに変換します。例えば、ログレベルを DEBUGに変更するには、次のコードを使用します。
レベルレベル = レベル.valueOf(“DEBUG”);
最後に、LoggerオブジェクトのsetLevelメソッドを利用して、ログレベルを指定したレベルオブジェクトに設定します。例えば、ログレベルをDEBUGに変更する場合、次のコードを使用できます。
logger.setLevel(level);
ログレベルは動的に変更できます。ただし、この後ログレベルを変更しても、変更前にはすでに記録されたログには影響しません。