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

ASF GitHub Bot commented on LOG4J2-1766:
----------------------------------------

Github user phymbert closed the pull request at:

    https://github.com/apache/logging-log4j2/pull/88


> Distinguish between partial and completed .gz archive file
> ----------------------------------------------------------
>
>                 Key: LOG4J2-1766
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1766
>             Project: Log4j 2
>          Issue Type: New Feature
>    Affects Versions: 2.5
>            Reporter: Sameer Pradhan
>              Labels: features
>             Fix For: 2.9
>
>
> I have the following log configuration.
> {code:xml}
>     <RollingRandomAccessFile name="RollingReqAppender"
>         fileName="/usr/test/req.log"
>         filePattern="/usr/test/req.log.%d{yyyy-MM-dd-HH}.%i.gz"
>         immediateFlush="true" append="true">
>         <PatternLayout>
>             <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS Z}%m%n</Pattern>
>         </PatternLayout>
>         <Policies>
>             <SizeBasedTriggeringPolicy size="500 MB"/>
>             <TimeBasedTriggeringPolicy interval="1" modulate="true" />
>         </Policies>
>     </RollingRandomAccessFile>
> {code}
> When the log is rolled over (based on time or size), it is gzipped. Gzipping 
> the file takes some time (seconds to minutes depending on load). The problem 
> is that the file is gzipped in place, and while it is being gzipped, the 
> partially gzipped file is stored in the same folder with the same name as the 
> final gzip file. e.g.: {{/usr/test/req.log.2017-01-03-02.1.gz}}
> This causes problems for the file's consumer, which attempts to process the 
> partial file. I want to be able to distinguish between a partial gzipped file 
> and a completed gzipped file. For example, I would like to setup a 
> configuration that while the file is being gzipped, it is written with a 
> different name e.g.: {{/usr/test/req.log.2017-01-03-02.1.gz.temp}} and once 
> it is completely gzipped the name is changed to the final name 
> {{/usr/test/req.log.2017-01-03-02.1.gz}}
> One way to achieve this is to add a new parameter like 
> "temporaryCompressedFilePattern" as follows:
> {code:xml}
> <RollingRandomAccessFile name="RollingReqAppender"
>         fileName="/usr/test/req.log"
>         filePattern="/usr/test/req.log.%d{yyyy-MM-dd-HH}.%i.gz"
>         
> temporaryCompressedFilePattern="/usr/test/req.log.%d{yyyy-MM-dd-HH}.%i.gz.temp"
> {code}
> Another option is to make such behavior the default behavior without adding a 
> new parameter.
>  
> This was first discussed at 
> http://stackoverflow.com/questions/41457492/partial-gz-file-written-by-log4j2
> Creating this feature request as suggested by @rpopma



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to