You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Ralph Goers (JIRA)" <ji...@apache.org> on 2015/10/14 06:53:05 UTC

[jira] [Commented] (LOG4J2-907) Log4j2 rolling policy

    [ https://issues.apache.org/jira/browse/LOG4J2-907?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14956260#comment-14956260 ] 

Ralph Goers commented on LOG4J2-907:
------------------------------------

Your supposition is correct in that the filename is not interpolated during each rollover. We will try to address this but obviously from the length of time since you opened this there have been items of higher priority.

Patches welcome!

> Log4j2 rolling policy
> ---------------------
>
>                 Key: LOG4J2-907
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-907
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Appenders
>    Affects Versions: 2.1
>         Environment: windows 7 enterprise
>            Reporter: Clement Caylux
>         Attachments: log4j2.xml
>
>
> I am using log4j2 and a rolling file appender, to roll file based on size and time. See my attached config file config file and the following snippet:
> {code:xml}
>  <RollingFile name="RollingFile" filename="log/$${date:dd-MM-yyyy-HH-mm}/currentRoll.log" filePattern="log/%d{dd-MM-yyyy-HH-mm}/Roll-%i.log">
>             <PatternLayout>
>                 <Pattern>%d{ISO8601}{GMT} %p %c{1.c} [%t] %m%n</Pattern>
>             </PatternLayout>
>             <Policies>
>                 <TimeBasedTriggeringPolicy interval="1"/>
>                 <SizeBasedTriggeringPolicy size="3KB"/>
>             </Policies>
>         </RollingFile>
> {code}
> My problem is that my current log (currentRoll.log) file is in the folder that was first created when the program started. I would need it to be in the last. So for example if I start running the program at 1pm on November 25th, 2014 , and at 3pm I want to look at the current logs they would not be in the 25-11-2014-15 folder but in the 25-11-2014-13 folder.
> My guess is that the date in the filename is not resolved dynamically. I have tried using monitorInterval to poll for auto reconfiguration but did not have any luck. I also tried using a '$$' in   
> {code:xml}
> filename="log/$${date:dd-MM-yyyy-HH-mm}/currentRoll.log" .
> {code}
>  but got the following error:
> {code}
> ERROR Unable to create file log/${date:dd-MM-yyyy-HH-mm}/currentRoll.log java.io.IOException: The filename, directory name, or volume label syntax is incorrect
> {code}
> Any suggestion?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org