使用log4net成功将日志写入oracle数据库

        我用了整整一天的时间才将log4net的日志文件写入oracle数据库,在配置的时候发现网上大多都是写入到mySql的,很少有人写入oracle,而且都反应很难成功。在此我将我的经验记录下来,希望能帮大家解决一些问题。

       首先,是到http://logging.apache.org/log4net/下下载log4net的软件包,其中有生成好的动态链接库和源码(在中间的源码可是帮了我大忙了)。将下载下来的压缩包解压后,在bin目录下根据你的需求寻找合适你的log4net.dll文件,并且将它加载到你的工程下。

      其次,从你的<系统盘>/WINDOWS/Microsoft.NET/Framework/<使用版本>下将system.data.oracleclient.dll文件拷贝下来放入到你工程的bin目录下(我这里指web工程),然后将这个包加入到你的工程中。

       然后,就是配置文件了,你可以在你的web.config(app.config)中写入配置,也可以新建立一个文件(本人在工程中新建立了一个文件名字是“log4net.config”)。log4net可以完成很多功能,其功能的配置在它的文档中都有说明,如果你有兴趣的话可以查看http://logging.apache.org/log4net/release/config-examples.html。但是如果你希望将日志写入到orcale9(其他版本我没有测试)那么document上的配置拿来是不可以直接使用的,要改动的地方有一下几处:

      (1)<connectionType>标签中的value属性值。将Version的值改成你在vs下看到的system.data.oracleclient.dll版本。然后使用Microsoft Visual Studio .NET 2003/SDK/v1.1/Bin下的sn.exe的-Tp命令查看system.data.oracleclient.dll的公钥标记将这个值更改到PublicKeyToken中。

      (2)<pParameterName value=":log_level" />中pParameterName 标记写错了应该是parameterName (文档中出现这样的错误实在不应该)

       最后,就是在你的工程中写代码了。如果是web工程,那么就在Global.asax.cs的Application_Start方法中加入如下的代码。

   //读取log4net的配置文件
   log4net.Config.XmlConfigurator.Configure(new FileInfo("log4net.config"));

  然后在每个要log4net的类上声明一个静态的公共数据

  //日志信息
  private static readonly ILog log = LogManager.GetLogger( typeof( 类名 ) );就可以通过log的对象写入相应级别的日志了。

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值