Enterprise Library4.0一log篇

本文介绍如何利用EnterpriseLibrary4.0的日志模块将日志信息存储到数据库中。通过配置CategorySources节点及数据库实例,可以轻松实现日志的持久化,并介绍了具体的实现代码。

最近研究了一下Enterprise Library4.0,在项目中做了点应用,这里和大家分享一下: Enterprise Library Logging应用程序块为用户提供了简单实现日志记录的功能,开发人员可以使用日志模块方便的将日志记录到windows事件日志、email,数据库,消息队列,文本等持久化设备中。我们这里列举一下将日志信息存储于数据库中的做法。首先我们要在Enterprise Library Configuration工具中配置日志模块

 

Category Sources节点中设置日志持久化到哪种设备中,比如Database节点中设置ReferencedTraceListener指向Trace Listeners节点中设置的Database Trace Listener,我们在这里设置他的数据库实例如下图。同时在这里还要配置写日志的存储过程名,这些存储过程和数据库是通过\EntLib4Src\Blocks\Logging\Src\DatabaseTraceListener\Scripts文件夹下LoggingDatabase.sql中的sql语句录入数据库中的,有兴趣的朋友可以研究一下。

下面的工作就容易了,首先我们要实例化一个LogEntry类用于存放日志体:

LogEntry logEntry = new LogEntry(); logEntry.Message = ex.Message; logEntry.Message +=Environment.NewLine + "StackTrace:" + ex.StackTrace; logEntry.Message += Environment.NewLine + "TargetSite:" + ex.TargetSite; logEntry.TimeStamp = DateTime.Now; logEntry.Categories.Clear(); logEntry.Categories.Add("Database");
这里Categories中添加的"Database"就是Category Sources节点中的"Database"节点。最后使用Logger类中的静态方法Write将日志写入数据库中

Logger.Write(logEntry);

这里如果添加多个Categories,日志将写入多个持久化设备中

转载于:https://www.cnblogs.com/andan/archive/2008/10/23/1318313.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值