Enterprise Library6.0之日志模块

The Logging Application Block(日志模块)

优点

l  监控常规的应用程序的性能,并提供信息。

l  提供有关应用程序的重要信息

l  提供性能相对比较高的日志解决方案,不需要你关心日志IO性能操作

l  日志写进程会自动收集一些上下文信息,如时间、应用程序域、机器名和进程ID等

l  可以将日志记录到windows事件日志、数据库、文本文件或者xml文件中

l  日志信息也可以通过Windows消息队列的路由分发到电子邮件

日志模块的原理及常见对象

 

 

标识引起跟踪事件的类型

Critical=1:错误或应用程序崩溃

Error=2:可恢复的错误

Warning=4:非关键性错误

Information=8:信息消息

Verbose=16:调试跟踪

应用日志

引用组件到你项目中

EnterpriseLibrary.Logging(必选组件)

EnterpriseLibrary.Logging.Database(发送日志记录到数据库中)

EnterpriseLibrary.Logging.Service(提供远程日志记录服务)

配置日志模块

 

创建写日志进程

如果是使用配置工具配置的话,在后台代码就只需要以下代码创建写日志进程(有问题)

LogWriterFactory logWriterFactory = new LogWriterFactory();

LogWriter logWriter = logWriterFactory.Create();

不使用工具,后台代码配置,则创建写日志进程

TextFormatter brie = new TextFormatter();

var flatFileTraceListener = new FlatFileTraceListener(path, headerstyle, footerstyle, brie);

config = new LoggingConfiguration();

config.AddLogSource("mylog", SourceLevels.All, true).AddTraceListener(flatFileTraceListener);

logwriter = new LogWriter(config);

创建日志对象

LogEntry entry = new LogEntry();

//事件号

entry.EventId = 9007;

entry.Message =  "日志信息";

//严重等级

entry.Priority = 9;

entry.Severity = TraceEventType.Verbose;

entry.Categories.Add("种类");

将日志对象用日志进程写入

logwriter.Write(entry);

posted @ 2017-12-12 20:23  Terrence_Sun  阅读(146)  评论(0编辑  收藏  举报