Please help how to handle the below scenario.
Current Web app :
I have placed log4j.propertes in /WEB-INF/classes
folder of webapp.
Wanted to achieve : Place log4j.properties in an external location and refer from my web application, so that i can modify the log location when ever i want without re building the war.
$CATALINA_HOME/propdirwebapp1/log4j.properties
$CATALINA_HOME/propdirwebapp2/log4j.properties
If i have multiple applications deployed please suggest the solution. If only one application is deployed on server please suggest the solution
In my case in web.xml
I added Log4jConfigListener
and it worked. log4jRefreshInterval
is optional here.
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>file:/<your-path-here>/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<!-- Refresh log4j configuration every 5 minutes. -->
<param-value>300000</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>