次のLog4Net構成があります。
<appender name="WSLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="${APPDATA}\xxxx"/>
<evaluator type="log4net.Core.LevelEvaluator,log4net">
<threshold value="WSLog" />
</evaluator>
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="WSLog" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<bufferSize value="1"/>
<appendToFile value="true"/>
<rollingStyle value="Size"/>
<datePattern value="yyyyMMdd"/>
<MaxSizeRollBackups value="7"/>
<StaticLogFileName value="true"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/>
<maximumFileSize value="5MB"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern
value="%newline__________________________________________________________%newlineTime:%utcdate%newline%newline%message%newline"/>
</layout>
</appender>
これは、ログに記録する必要のある巨大な文字列ができるまでは問題なく機能します。たとえば、文字列が約8000文字の場合、Log4Netは単に文字列の書き込みを回避します。それは切り捨てられてさえ書きません。大きな文字列をログに記録する(完全にまたは切り捨てられる)方法はありますか?