在網上看了幾個教程,都有一些小問題,幾經測試,實驗了一下,寫一個最簡單的能用的出來,希望對初學者能有用!
首先在App.Config裡面添加:
代碼
<configSections>
<section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler,log4net-net-1.0"/>
</configSections>
<log4net>
<root>
<level value="WARN" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<file value="log-file.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<header value="[Header] " />
<footer value="[Footer] " />
<conversionPattern value="%date ---[%thread] %-5level '%logger': %message%newline" />
</layout>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern"
value="%d [%t] %-5p (%c) - %m%n"
/>
</layout>
</appender>
</log4net>
然後在AssemblyInfo.cs添加下面一行。
[assembly: log4net.Config.XmlConfigurator()]
最後就是在代碼裡使用了。
代碼
public class WorkerThreadExample
{
private static readonly log4net.ILog log = log4net.LogManager.GetLogger("test");
static void Main()
{
if (log.IsInfoEnabled) log.Fatal("Application [ConsoleApp] Start");
log.Info("error");
log.Fatal("wadsadasd");
}
}
更詳細的資訊參見文檔和 某位博友的文章,不過這篇文章的config好像有一些問題,主要是param的設定上和文檔中不一致。
http://dragon.cnblogs.com/archive/2005/03/24/124254.aspx