Log4net配置完成之后,就可以使用了。
(一)关联属性
log4net默认关联的是应用程序的配置文件(AppName.exe.config),可以使用程序集自定义属性来进行设置。下面来介绍一下这个自定义属性:log4net.Config.XmlConifguratorAttribute。
XmlConfiguratorAttribute有3个属性:
ConfigFile 配置文件的名字,文件路径相对于应用程序目录(AppDomain.CurrentDomain.BaseDirectory)。ConfigFile属性不能和ConfigFileExtension属性一起使用。自己定义了一个log4net的配置文件时,可以通过这个属性来指定配置文件。
ConfigFileExtension 配置文件的扩展名,文件路径相对于应用程序的目录。ConfigFileExtension属性不能和ConfigFile属性一起使用。当应用程序会编译成不同扩展名称的程序集时,可以使用这个属性。如Sample程序将编译成Sample.exe,则ConfigFileExtension设置为“config”,那么所使用的配置文件名称为:Sample.exe.config。注意不能和ConfigFile属性同时使用。
Watch 如果将Watch属性设置为true,就会监视配置文件。当配置文件发生变化的时候,就会重新加载。在运行期间是否监测配置文件。当值为true时,FileSystemWatcher将用来监视配置文件的内容改变、重命名和删除通知。
如果ConfigFile和ConfigFileExtension都没有设置,则使用应用程序的配置文件(AppName.exe.config)。
举例:
[assembly: log4net.Config.XmlConfigurator(Watch=true,ConfigFile="Sql2000/self.xml")]
使用自定义的配置文件,注意文件的路径,如果配置文件放在主目录的话,则要:
[assembly: log4net.Config.XmlConfigurator(Watch=true,ConfigFile=" self.xml")]
(二)获取日志对象
ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
LogManager还有其他多个方法
(三)使用
ILog log = log4net.LogManager.GetLogger(
MethodBase.GetCurrentMethod().DeclaringType);
log.Error("error", new Exception("发生了一个异常"));
Console.WriteLine("日志记录完毕。");
(四)结果
(1)控制台
System.Exception: 发生了一个异常
日志记录完毕。
(2)日志文件
[Header]
2009-12-10 11:15:57,593 [TestRunnerThread] ERROR Log4netTest.UTest [(null)] - error
System.Exception: 发生了一个异常
[Footer]
更多内容请参考:http://blog.csdn.net/lyjcn/archive/2009/08/11/4432833.aspx(非常感谢作者。)
可以到下边转转,研究研究
http://ondotnet.com/pub/a/dotnet/2003/06/16/log4net.html?page=1