Я хочу, чтобы мои файлы журналов, созданные log4j2, имели шаблон даты в имени своего файла, включая текущий активный файл. То есть, если сегодняшняя дата - 2016-12-15, я хочу, чтобы текущий файл журнала был lager-2016-12-15.log. Когда изменяется дата, я хочу создать новый файл с именем lager-2016-12-16.log.Log4j2 ежедневные файлы журнала
С RollingFileAppender
Я не могу получить текущий активный файл журнала, чтобы иметь шаблон даты в имени файла. Мой Log4j2.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Properties>
<Property name="layoutPattern">%d{ISO8601} [%t] %-5p [%X{REQUEST_ID}] [%X{CLIENT_ID}] [%X{USER_ID}] %c- %m%n</Property>
<Property name="logDir">${sys:catalina.home}/logs/</Property>
<Property name="fileName">${logDir}lager-${date:yyyy-MM-dd-HHmm}.log</Property>
<Property name="filePattern">${logDir}lager-%d{yyyy-MM-dd-HHmm}.log</Property>
</Properties>
<Appenders>
<RollingFile name="LAGER" append="true"
fileName="${fileName}"
filePattern="${filePattern}">
<PatternLayout pattern="${layoutPattern}" charset="UTF-8"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
</RollingFile>
</Appenders>
<loggers>
<Logger name="org.apache.catalina.core.ContainerBase.[Catalina].[localhost]" level="WARN" additivity="false">
<AppenderRef ref="LAGER" />
<AppenderRef ref="CONSOLE"/>
</Logger>
<Root level="INFO">
<AppenderRef ref="LAGER"/>
<AppenderRef ref="CONSOLE"/>
</Root>
</loggers>
</Configuration>
С этим конфиг копирование, когда он переворачивается перепутались. Удаление шаблона даты из свойства fileName исправляет это, но текущий файл не имеет даты в его имени.
Я запускаю это на tomee 7.0.1.