Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reload log4j2 configuration on demand

Tags:

I have my log4j2.xml config file set to be checked every 30 seconds:

<Configuration status="WARN" monitorInterval="30">
    ...
</Configuration>

Is it possible to programmatically tell log4j2 to check for changes in the configuration instead of having a timeout?

N.B. I don't want to programmatically load the configuration specifying the config file, I just want to tell log4j2 to check the config file that has been loaded before as if the monitorInterval expired.

Thanks!

like image 944
jamp Avatar asked Jan 29 '15 13:01

jamp


1 Answers

It looks like I've found the solution:

((org.apache.logging.log4j.core.LoggerContext) LogManager.getContext(false)).reconfigure();

Does anyone see anything wrong/side-effects with this?

like image 160
jamp Avatar answered Sep 20 '22 06:09

jamp