Hi All,

We're using Log4j in a webapp and are looking at migrating to Log4j 2.

We'd like to continue writing our log files to a location under the webapp's 
context root -- that is, under the directory returned by 
ServletContext.getRealPath("/"). This works very well in our QA environment 
where multiple versions of the webapp are deployed to a single Tomcat server.

I've written a Lookup plugin that maps "${web:rootDir}" to the desired path. 
The problem is that the plugin is ignored when parsing the config file, 
specifically the "filename" attribute of a "File" appender. The 
BaseConfiguration object seems to be using a StrSubstitutor with a default 
Interpolator that only knows about the "sys" and "env" prefixes.

For what it's worth, the custom Lookup plugin works fine when used in a pattern 
layout string.

Any thoughts on how to get the BaseConfiguration to use a custom Lookup plugin, 
or alternate ways to get the log files to appear under the webapp root? System 
properties aren't the solution since they are shared between webapps and we'd 
rather not return to the bad old days of using a different property for each 
webapp.

Log4j 2 beta 8.

Thanks,
David
---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-user-h...@logging.apache.org

Reply via email to