log4j2 filePattern不进行插值

时间:2017-01-30 11:01:25

标签: log4j2 rollingfileappender

我尝试添加以下RollingFile appender;

    <RollingFile name="appFile" fileName="${sys:catalina.base}${sys:file.separator}logs${sys:file.separator}${web:contextPath}${sys:file.separator}app.log" filePattern="app-%d{dd-MM-yyyy}.log">
        <PatternLayout pattern="%d{dd/MM/yyyy HH:mm:ss} %c{2} - %m%n" />
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="250 MB" />
        </Policies>
        <DefaultRolloverStrategy max="20" />
    </RollingFile>

文件是在正确的路径中创建的,但名称始终相同(app.log)而不是app-xx-xx-xxxx.log。

我想念什么?

1 个答案:

答案 0 :(得分:2)

filePattern属性是翻转时要使用的文件名的模式。但是如果你想在主动写入tom的文件名中使用日期模式,你可以在filename属性中使用Date Lookup,即:

fileName="${sys:catalina.base}${sys:file.separator}logs${sys:file.separator}${web:contextPath}${sys:file.separator}app-${date:dd-MM-yyyy}.log"