Enterprise Library4.0一log篇

最近研究了一下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,日志将写入多个持久化设备中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值