3
我想限制日誌文件的大小爲50MB。我在web.config中配置如下:Sitecore 8,限制日誌記錄的大小
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, Sitecore.Logging"/>
現在確定如何設置日誌記錄的最大文件大小?
我想限制日誌文件的大小爲50MB。我在web.config中配置如下:Sitecore 8,限制日誌記錄的大小
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, Sitecore.Logging"/>
現在確定如何設置日誌記錄的最大文件大小?
默認情況下,Sitecore配置爲所有日誌記錄提供了log4net.Appender.SitecoreLogFileAppender
類型。 SitecoreLogFileAppender
不支持最大文件大小。
您可以將此配置更改爲使用log4net.Appender.RollingFileAppender
。它支持最大文件大小的屬性。
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="$(dataFolder)/logs/log.{date}.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="0" />
<maximumFileSize value="10MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%4t %d{ABSOLUTE} %-5p %m%n" />
</layout>
</appender>
該解決方案有一個缺點 - 每次超過文件大小限制時,所有日誌都將被刪除。
爲避免完全截斷並仍然解決日誌文件過大的問題,可以將maxSizeRollBackups
設置爲較小的數字,例如, 2,並分別減少maximumFileSize
。這樣,在截斷之後,您仍然有最新的日誌消息可用,而不是沒有。