[ https://issues.apache.org/jira/browse/LOG4NET-506?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Frédéric Delaporte updated LOG4NET-506: --------------------------------------- Summary: RollingFileAppender locking log folder in some cases (was: RollingFileAppender no more able to log to same folder from different processes) > RollingFileAppender locking log folder in some cases > ---------------------------------------------------- > > Key: LOG4NET-506 > URL: https://issues.apache.org/jira/browse/LOG4NET-506 > Project: Log4net > Issue Type: Bug > Components: Appenders > Affects Versions: 1.2.15 > Environment: Windows Server 2008 R2, Windows Server 2012 R2 > Reporter: Frédéric Delaporte > Priority: Minor > Attachments: SiteAlone_log4net.txt, SiteWithSvc_log4net.txt > > > Many applications run on the same server. > Some are windows services running under "Local system" identity, others are > IIS hosted web sites running under "Application pool" identity. > All do log through {{RollingFileAppender}} to {{D:\Logs\}} (value of {{file}} > configuration node) to their own file log (filename specific to each > application through {{datePattern}} configuration node). > They log through {{AdoNetAppender}} too. > Since having upgraded Log4Net from 1.2.13 to 1.2.15 on all services and some > web sites, upgraded IIS web sites cease being able to log to {{D:\Logs\}}. > SQL logs still work. Non upgraded web site are still able to log to > {{D:\Logs\}}. > The services start before the web sites. > Stopping all services then restarting a web site allows it to log again in > {{D:\Logs\}}. Restarting a second web site (having a different application > pool) while the first is still running does not allow the second one to log > again in {{D:\Logs\}} (Application pool identity give different identity to > each pool). > Activating log4net debug trace on a web site, and comparing failure cases to > working cases, yields following diff: > _failing case_ > {quote} > log4net:ERROR Could not create Appender [RollingLogFileAppender] of type > [log4net.Appender.RollingFileAppender]. Reported error follows. > System.UnauthorizedAccessException: L'accès au chemin d'accès 'D__Logs_' est > refusé. > à System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) > à System.Threading.Mutex.MutexTryCodeHelper.MutexTryCode(Object userData) > à > System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode > code, CleanupCode backoutCode, Object userData) > à System.Threading.Mutex.CreateMutexWithGuaranteedCleanup(Boolean > initiallyOwned, String name, Boolean& createdNew, SECURITY_ATTRIBUTES > secAttrs) > à System.Threading.Mutex..ctor(Boolean initiallyOwned, String name, > Boolean& createdNew, MutexSecurity mutexSecurity) > à System.Threading.Mutex..ctor(Boolean initiallyOwned, String name, > Boolean& createdNew) > à log4net.Appender.RollingFileAppender.ActivateOptions() > à > log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseAppender(XmlElement > appenderElement) > log4net:ERROR Appender named [RollingLogFileAppender] not found. > {quote} > _working case corresponding logs_ > {quote} > log4net: Searched for existing files in [D:\Logs] > log4net: curSizeRollBackups starts at [0] > log4net: Opening file for writing [D:\Logs\2016.02.26-WebSite1.log] append > [True] > log4net: Created Appender [RollingLogFileAppender] > log4net: Adding appender named [RollingLogFileAppender] to logger [root]. > {quote} > (All other log lines are identical) > _WebSite appender configuration (in *bold* what does change with Svc conf)_ > {quote} > <appender name="RollingLogFileAppender" > type="log4net.Appender.RollingFileAppender"> > <file value="D:\Logs\" /> > <datePattern value="yyyy.MM.dd'-*SiteWeb1*.log'" /> > <staticLogFileName value="false" /> > <appendToFile value="true" /> > <rollingStyle value="Composite" /> > <maxSizeRollBackups value="10" /> > <maximumFileSize value="5MB" /> > <layout type="log4net.Layout.PatternLayout"> > <conversionPattern value="%date [%thread] %-5level %logger - %message - > %property%newline%exception" /> > </layout> > </appender> > {quote} > _Svc appender configuration_ > {quote} > <appender name="RollingLogFileAppender" > type="log4net.Appender.RollingFileAppender"> > <file value="D:\Logs\" /> > <datePattern value="yyyy.MM.dd'-*Svc1*.log'" /> > <staticLogFileName value="false" /> > <appendToFile value="true" /> > <rollingStyle value="Composite" /> > <maxSizeRollBackups value="10" /> > <maximumFileSize value="5MB" /> > <layout type="log4net.Layout.PatternLayout"> > <conversionPattern value="%date [%thread] %-5level %logger - %message - > %property%newline%exception" /> > </layout> > </appender> > {quote} -- This message was sent by Atlassian JIRA (v6.3.4#6332)