我可以知道applicationcontext.xml中的日志目录路径吗?

时间:2013-07-28 15:11:00

标签: java tomcat applicationcontext

我正在为Tomcat 7编写一个java应用程序。

我有一个类的bean配置,用于创建日志文件并向其附加信息。

现在问题是如何知道bean配置中的tomcat日志目录路径。

现在我有以下bean:

    <bean id="foo_logger" class="com.bar.LoggerBean">
            <!-- <property name="logPath" value="/path/DWHEventGenerator.log"/> -->
            <property name="logPath" value="/var/lib/tomcat7/logs/mylog.log"/>
            <property name="logLevel" value="ALL"/> <!-- ALL, FINE/R/ST, INFO, SEVERE, WARNING, OFF -->
    </bean>

我想要做的不是指定/ var / log / tomcat7 / log,而是指定一些变量来指示tomcat的logs目录的实际路径。那可能吗 ?

谢谢。

1 个答案:

答案 0 :(得分:2)

最简单的方法是使用catalina.base属性值

中系统属性的logPath
<property name="logPath" value="${catalina.base}/logs/mylog.log"/>

此属性将由Tomcat的启动脚本(catalina.sh / catalina.bat设置),以便在Spring加载应用程序上下文文件时可以使用。