On 21 Aug 2017 10:37 a.m., "Sachin Abaso Patil (JIRA)" <[email protected]>
wrote:
[ https://issues.apache.org/jira/browse/LOG4NET-552?page=
com.atlassian.jira.plugin.system.issuetabpanels:comment-
tabpanel&focusedCommentId=16134885#comment-16134885 ]
Sachin Abaso Patil commented on LOG4NET-552:
--------------------------------------------
Yes, we can implement this fix as new locking model as you suggested.
However, we didn't understood why we don't require a new version of the
log4net assembly as this change will be merged into latest log4net source
code and we require to replace new log4net version assembly with our change
into our client project. This is our understanding. Please correct us if we
missed anything.
You can reference a custom implementation of a locking model in the
configuration. Log4net will create an instance and use it after restarting
the application.
> Incorrect behavior of RollingFileAppender while rolling files, if
multiple processes appending into same file
> ------------------------------------------------------------
-------------------------------------------------
>
> Key: LOG4NET-552
> URL: https://issues.apache.org/jira/browse/LOG4NET-552
> Project: Log4net
> Issue Type: Bug
> Components: Appenders
> Affects Versions: 1.2.15
> Environment: Windows Server 2008 R2 Enterprise
> Reporter: Sachin Abaso Patil
> Priority: Blocker
> Attachments: Modification in AdjustFileBeforeAppend.png
>
>
> Hi Team,
> This issue has become blocker for us, as on our production environment,
multiple processes are appending log into single log file which has no
issue, but while rolling it overwrites files and thus missing log entries.
> Based on link below, it looks like log file rolling mechanism of log4net
is not process safe even after using FileAppender.InterProcessLock.
> Link: https://issues.apache.org/jira/browse/LOG4NET-485
> Also, in FAQ (https://logging.apache.org/log4net/release/faq.html) under
section “How do I get multiple process to log to the same file?”, it has
been clearly mentioned that, rolling files is simply not compatible with
multiple process scenario.
> My questions,
> 1. We are using version “1.2.15”. Are you planning to fix above
mentioned rolling issue in upcoming release? If yes then please provide
tentative release date.
> 2. We had incorporated log4net in our project in year 2009, had FAQ
mentioned this limitation (rolling file not compatible with multi process)
in year 2009? Because we while studying log4net during year 2009 we do not
remember seeing this note in FAQ?
> Requesting you to please respond as soon as possible with your comments.
> Below is how we have configured appender for all processes,
> <appender name="RollingFileAppender" type="log4net.Appender.
RollingFileAppender">
> <threshold value ="ERROR"/>
> <file value="${SystemDrive}\LogFiles\Example.log" />
> <param name="LockingModel"
> type="log4net.Appender.FileAppender+MinimalLock"
/>
> <appendToFile value="true" />
> <maximumFileSize value="100MB" />
> <staticLogFileName value="true"/>
> <maxSizeRollBackups value="-1" />
> <countDirection value="1" />
> <datePattern value=".yyyyMMddHH'.log'"/>
> <rollingStyle value="Composite" />
> <ignoreExceptionItemAgeLimit value="false" />
> <exceptionItemAgeLimit value="00:00:59" />
> <layout type="log4net.Layout.PatternLayout">
> <param name="conversionPattern" value ="%utcdate{yyyy-MM-dd
HH:mm:ss.fff}|%-5level|%property{EventID}|%property{
log4net:HostName}|%appdomain|%property{ProcessID}|%thread|%
message%newline"/>
> </layout>
> </appender>
> Thanks,
> Sachin Patil
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)