使用谨慎标志和文件位置设置Logback RollingFileAppender

Dar*_*Var 3 logback

如何RollingFileAppender在接受谨慎标志的Logback中创建一个并允许我指定日志文件的位置?

我尝试了以下内容,但据我所知,文档中的logback不支持file属性.还有另一种设置日志文件位置的方法吗?

   <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${MY_LOG_LOCATION_PROP}/logs/mylogfile.log</file>
        <prudent>true</prudent>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- rollover daily -->
            <fileNamePattern>mylogfile-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
        </rollingPolicy>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
Run Code Online (Sandbox Code Playgroud)

Cek*_*eki 5

如果file缺少该属性,则将从值中推断出当前活动的日志文件fileNamePattern.因此,该file财产不是强制性的.同样重要的是,在审慎模式下,它必须留空.

以下是fileNamePattern文档中的相关引用:

请注意,可以设置或省略RollingFileAppender(TimeBasedRollingPolicy的父级)中的文件属性.通过设置包含FileAppender的file属性,可以分离活动日志文件的位置和归档日志文件的位置.当前日志将始终以文件属性指定的文件为目标.因此,当前活动日志文件的名称不会随时间而改变.但是,如果选择省略file属性,则将根据fileNamePattern的值为每个句点重新计算活动文件.下面的例子应该澄清这一点......