[ https://issues.apache.org/jira/browse/LOG4J2-3339?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ralph Goers reassigned LOG4J2-3339: ----------------------------------- Assignee: Ralph Goers > FilePattern doesn't rotate correctly when not using a Filename > -------------------------------------------------------------- > > Key: LOG4J2-3339 > URL: https://issues.apache.org/jira/browse/LOG4J2-3339 > Project: Log4j 2 > Issue Type: Bug > Components: Appenders > Affects Versions: 2.14.1, 2.17.0 > Reporter: Miguel Valente > Assignee: Ralph Goers > Priority: Minor > > [Note: Probably affects all versions of log4j2, but 2.17, and 2.14.1 I tested] > > Quick Description: > When using a appender with *FilePattern* but {*}without FileName{*}, then > log4j2 eats one of the logs (the one generated on boot), then will always lag > behind for 1 timeunit (Depending on the kind of rotation) > > Ex with Minutes rotation: > [First message ocurring on boot] > # {{{color:#57d9a3}10:49:18,385{color} - Now writing to > ./logs/13/test.{*}1049{*}.log at 2022-01-13T10:49:18.385+0000}} > # {{{color:#ffab00}10:50:00,007{color} Log4j2-TF-2-Scheduled-1 DEBUG Rolling > ./logs/13/test.1049.log}} > # {{{color:#ffab00}10:50:00,016{color} Log4j2-TF-2-Scheduled-1 DEBUG > GzCompressAction[./logs/13/test.1049.log to ./logs/13/test.1049.log.gz, > deleteSource=true]}} > # {{{color:#ffab00}10:50:00,019{color} Now writing to > ./logs/13/test.{color:#de350b}*1049*{color}.log at > 2022-01-13T{*}10:50:00.019+00{*}}} > # {{{color:#4c9aff}10:51:00,001{color} Log4j2-TF-2-Scheduled-3 DEBUG Rolling > ./logs/13/test.1049.log}} > # {{{}{color:#4c9aff}10:51:00,004{color} Log4j2-TF-2-Scheduled-3 DEBUG > RollingFileManager executing async > GzCompressAction[./logs/13/test.{*}1049{*}.log to > ./logs/13/test.{*}1049{*}.log.gz, > deleteSource=true]{}}}{{{{}}{}}}{{{{}}{}}}{{{{}}{}}} > We can see that on 4. log4j2 didnt started log 1050.log but recreated > {*}1049{*}.log which will end up deleting the original boot log > > Detected on: > [https://stackoverflow.com/questions/70695499/log4j2-seems-to-be-lagging-one-time-unit-behind] > > Ex Configs to replicate issue: > properties: > {code:java} > ### Normal log file Configuration > appender.fileRotator.type=RollingFile > appender.fileRotator.name=fileRotator > appender.fileRotator.filePattern=${sys:logs.directory}/$${date:dd}/test.%d{HHmm}.log.gz > appender.fileRotator.layout.type=PatternLayout > appender.fileRotator.layout.pattern=[%-5level] %d{HH:mm:ss.SSS yyyy-MM-dd} | > [%t] %c{1} %L |#| %msg%n > appender.fileRotator.policies.type=CronTriggeringPolicy > appender.fileRotator.policies.schedule=0 * * ? * * * > rootLogger.appenderRef.stdout.ref=fileRotator > rootLogger.level=warn > status=debug {code} > Xml: > {code:java} > <?xml version="1.0" encoding="UTF-8"?> > <Configuration status="warn" name="App" packages=""> > <Appenders> > <RollingFile name="RollingFile" > filePattern="${sys:logs.directory}/$${date:dd}/test.%d{HHmm}.log.gz"> > <PatternLayout> > <Pattern>%d{ISO8601} | %-5.5p | %-8.8t | %-40.40c{1} | > %m%n%ex</Pattern> > </PatternLayout> > <Policies> > <CronTriggeringPolicy schedule="0 0 * * * ?"/> > </Policies> > </RollingFile> > </Appenders> > <Loggers> > <Root level="info"> > <AppenderRef ref="RollingFile"/> > </Root> > </Loggers> > </Configuration> {code} -- This message was sent by Atlassian Jira (v8.20.1#820001)