Uploaded image for project: 'Log4net'
  1. Log4net
  2. LOG4NET-534

rollingfileappender: INTERNAL ERROR. Append is False but OutputFile already exists

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Invalid
    • Affects Version/s: 1.2.15
    • Fix Version/s: None
    • Component/s: Appenders
    • Labels:
    • Environment:
      Windows 10

      Description

      Have read about LOG4NET-118 and LOG4NET-485 but it looks like neither has a resolution. Existing log file is not being rolled, it is being overwritten instead.

      Same code and config running on Windows 7, produces the error message in the summary. Not sure if UAC is a cause. Log file is written into users %LOCALAPPDATA%\TEMP directory. I have read about some "internal" log4net logging, but do not know how to activate that.

      The config:
      <?xml version="1.0" encoding="utf-8" ?>
      <configuration>
      <Unable to render embedded object: File (-- configSections MUST be first) not found. -->
      <configSections>
      <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
      </configSections>

      <log4net>
      <appender name="MAINLogFile" type="log4net.Appender.RollingFileAppender">
      <file type="log4net.Util.PatternString" value="%property

      {LogFileName}

      "/>
      <appendToFile value="false"/>
      <maximumFileSize value="20MB"/>
      <maxSizeRollBackups value="3"/>
      <param name="Encoding" value="unicodeFFFE"/>
      <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date

      {ISO8601}

      %property

      {messageId}

      %-5level %message%newline"/>
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="ALL"/>
      <param name="LevelMax" value="OFF"/>
      </filter>
      </appender>

      <appender name="AsyncBufferingAppender-HotSwap" type="AsyncForwardingAppenderHotSwap">
      <GrowType value="Grow"/>
      <GrowLimit value="3000000"/>
      <Fix value="4"/>
      <appender-ref ref="MAINLogFile"/>
      </appender>

      <logger name="MAIN">
      <level value="INFO"/>
      <appender-ref ref="AsyncBufferingAppender-HotSwap"/>
      </logger>
      </log4net>

      <startup>
      <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>
      </startup>

      <system.windows.forms jitDebugging="true"/>

      <system.diagnostics>
      <trace useGlobalLock="false"/>
      </system.diagnostics>
      </configuration>

      The AsyncBufferingAppender-HotSwap is borrowed from here:

      (I also tried without the Asynchronous Appender as well)

        Attachments

          Activity

            People

            • Assignee:
              nachbarslumpi Dominik Psenner
              Reporter:
              jaymccormick Jay McCormick
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: