在使用log4j的时候,因为项目位置不确定需要频繁的修改日志的打印位置,所以我把项目的位置放在了application.yml里,使用Log4j.xml读取application.yml的配置信息。
<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径 -->
<property name="LOG_HOME" value="${logPath}" />
<property name="AppName" value="${logName}" />
Application.yml配置文件
videoRemote:
#日志打印路径 定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径
logPath: /idea2017/videoremote/log
#日志名称前缀
logName: videoremote
#日志打印级别 INFO_FILE (INFO) ERROR_FILE (ERROR)
level: INFO
读取application.yml的内容:
<!-- 获取yml中的log地址 -->
<springProperty scope="context" name="logPath" source="videoRemote.logPath" defaultValue="logdir"/>
<springProperty scope="context" name="logName" source="videoRemote.logName" defaultValue="videoremote"/>
<springProperty scope="context" name="logLevel" source="videoRemote.level" defaultValue="INFO"/>