André Pinto created LOG4J2-2804:
-----------------------------------
Summary: RollingRandomAccessFile uses wrong time for filename
Key: LOG4J2-2804
URL: https://issues.apache.org/jira/browse/LOG4J2-2804
Project: Log4j 2
Issue Type: Bug
Components: Appenders
Affects Versions: 2.13.1
Reporter: André Pinto
When there are both size based and time based triggering policies, if the size
based policy is triggered, the file is named as if the time based policy was
triggered.
Example config:
{code:java}
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" name="Mux">
<Properties>
<Property name="LOG_DIR">logs</Property>
</Properties>
<Appenders>
<Console name="Console" target="SYSTEM_OUT"/>
<RollingRandomAccessFile name="main"
fileName="${LOG_DIR}/main-current.log-active"
filePattern="${LOG_DIR}/main-%d{yyyy-MM-dd-HH.mm.ss}.log"
ignoreExceptions="false" immediateFlush="false"
bufferSize="1048576">
<PatternLayout>
<Pattern>%m\n</Pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="256 B" />
<TimeBasedTriggeringPolicy interval="3600" />
</Policies>
<DefaultRolloverStrategy fileIndex="nomax" />
</RollingRandomAccessFile>
</Appenders>
<Loggers>
<Root level="OFF">
<AppenderRef ref="Console" />
</Root>
<Logger name="main" level="ALL" additivity="false">
<AppenderRef ref="main"/>
</Logger>
</Loggers>
</Configuration>
{code}
With this configuration if I start writing log entries at 2020-03-09 13:00.00
and immediately trigger the SizeBasedTriggeringPolicy (256 bytes), the name of
the file that is rolled over will be:
main-2020-03-09-14.00.00
as if the rollover operation had been triggered by the time policy.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)