如何在项目目录上方一层或同一层中指定在application.properties中存储日志的路径

问题描述

我在logback.xml中指定了Spring记录器的依赖项:

logging.file.path=logs
logging.file.name=${logging.file.path}/app.log

现在,在编写日志时,会在项目的根文件夹中创建一个日志文件夹,并且由于某种原因,还会创建logging.path_IS_UNDEFINED文件夹。 我有两个问题:

  • 如何使日志写入的文件夹不是绝对路径,而是相对路径?也就是说,如果项目位于D:\ Projects \ MyProject中,则日志应位于D:\ Projects \ logs
  • 为什么在logging.path_IS_UNDEFINED中重复日志?

这是我的logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <include resource="org/springframework/boot/logging/logback/base.xml"/>

    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %highlight(%-5level) %logger{36} - %msg%n</Pattern>
        </encoder>
    </appender>

    <appender name="RollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logging.path}/${logging.file}.log</file>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
        </encoder>
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>2MB</maxFileSize>
        </triggeringPolicy>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${logging.path}/${logging.file}-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
            <maxFileSize>2MB</maxFileSize>
            <maxHistory>30</maxHistory>
            <totalSizeCap>10MB</totalSizeCap>
        </rollingPolicy>
    </appender>

    <root level="INFO">
        <appender-ref ref="Console"/>
    </root>
    <root level="DEBUG">
        <appender-ref ref="RollingFile"/>
    </root>

    <logger name="com.my.project" level="TRACE" additivity="false">
        <appender-ref ref="Console"/>
    </logger>

    <logger name="com.my.project" level="ERROR" additivity="false">
        <appender-ref ref="RollingFile"/>
    </logger>

    <logger name="com.my.project" level="WARN" additivity="false">
        <appender-ref ref="RollingFile"/>
    </logger>

</configuration>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)