Log4net配置完成之后,就可以使用了。

(一)关联属性

log4net默认关联的是应用程序的配置文件(AppName.exe.config),可以使用程序集自定义属性来进行设置。下面来介绍一下这个自定义属性:log4net.Config.XmlConifguratorAttribute

 

XmlConfiguratorAttribute3个属性:

 

ConfigFile 配置文件的名字,文件路径相对于应用程序目录(AppDomain.CurrentDomain.BaseDirectory)ConfigFile属性不能和ConfigFileExtension属性一起使用。自己定义了一个log4net的配置文件时,可以通过这个属性来指定配置文件。

ConfigFileExtension 配置文件的扩展名,文件路径相对于应用程序的目录。ConfigFileExtension属性不能和ConfigFile属性一起使用。当应用程序会编译成不同扩展名称的程序集时,可以使用这个属性。如Sample程序将编译成Sample.exe,则ConfigFileExtension设置为“config”,那么所使用的配置文件名称为:Sample.exe.config。注意不能和ConfigFile属性同时使用。

Watch 如果将Watch属性设置为true,就会监视配置文件。当配置文件发生变化的时候,就会重新加载。在运行期间是否监测配置文件。当值为true时,FileSystemWatcher将用来监视配置文件的内容改变、重命名和删除通知。

如果ConfigFileConfigFileExtension都没有设置,则使用应用程序的配置文件(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

 

posted on 2009-12-10 11:25  梅桦  阅读(964)  评论(0编辑  收藏  举报