log4net.xml sample
David | January 12, 2015Below is a sample log4net.xml file that I often use as a starting point for smaller applications. It includes 3 appenders:
- A rolling file appender
- An XML rolling file appender
- A Windows Event log appender
I usually set the Windows Event log appender threshold to FATAL so that only critical events hit the log.
<?xml version="1.0"?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections> <log4net> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> <threshold value="DEBUG"/> <file value="..\log\Log4NetPrototype.log"/> <appendToFile value="true"/> <rollingStyle value="Size"/> <maxSizeRollBackups value="5"/> <maximumFileSize value="100MB"/> <staticLogFileName value="true"/> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date th:[%thread] %level %class.%method() - %message%newline%exception"/> </layout> </appender> <appender name="RollingXMLFileAppender" type="log4net.Appender.RollingFileAppender"> <threshold value="DEBUG"/> <file value="..\log\Log4NetPrototype.xml" /> <appendToFile value="true"/> <rollingStyle value="Size"/> <maxSizeRollBackups value="5"/> <maximumFileSize value="100MB"/> <staticLogFileName value="true"/> <encoding value="unicodeFFFE" /> <layout type="log4net.Layout.XmlLayout" /> </appender> <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > <threshold value="FATAL"/> <applicationName value="Log4NetPrototype" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> </layout> </appender> <root> <level value="DEBUG"/> <appender-ref ref="RollingFileAppender"/> <appender-ref ref="RollingXMLFileAppender"/> <appender-ref ref="EventLogAppender"/> </root> </log4net> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> </startup> </configuration>