Galera já percorri bastante pela internet em busca de resposta mais ainda não encontrei nenhum que me convenceu, então resolvi procurar ajudar de vocês:
Tenho o seguinte log4j.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="INFO" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m %n" />
</layout>
</appender>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
<param name="Threshold" value="INFO" />
<param name="File" value="caminho_completo/atlas.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m %n" />
</layout>
</appender>
<logger name="javabeat.net.log4j" additivity="false" >
<level value="INFO" />
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
</logger>
<logger name="com.thoughtworks" additivity="false">
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</logger>
<logger name="br.com.caelum.vraptor" additivity="false">
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</logger>
<logger name="org.springframework" additivity="false">
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</logger>
<logger name="org.hibernate" additivity="false">
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</logger>
<logger name="br.com.tsoftnet.atlas.persistence.dao" additivity="false">
<level value="INFO" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
</logger>
</log4j:configuration>
Minha dúvida é:
Ná linha 14 para o log4j funcionar correto tenho que passar todo o caminha até aonde o arquivo de log tem que ficar, mais ele fica na raiz da aplicação, não tem uma forma de deixar isso mais dinâmico?