2017-01-30 3 views
1

Я попытался добавить следующее приложение RollingFile;log4j2 filePattern не интерполирует

<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) вместо приложения-хх-хх-xxxx.log.

Что мне не хватает?

ответ

1

Атрибут filePattern является шаблон имени файла для использования на опрокидывании. Но если вы хотите шаблон даты в имени файла, который активно написан Томом, вы можете использовать Date Lookup в атрибуте filename, то есть:

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

Спасибо, что ты прав. Теперь он отлично работает! – Myrdivar

Смежные вопросы