Microsoft Enterprise Library 5.0 系列(四) Logging Application Block

阅读: 25 评论: 0 作者: huangcong 发表于 2010-06-01 12:07 原文链接

 

<[if !mso]> <[endif]><[if gte mso 9]> HC HC 2 341 2010-05-31T15:18:00Z 2010-05-31T15:18:00Z 23 1418 8083 SkyUN.Org 67 18 9483 12.00

企业库日志应用程序模块工作原理图:


Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第1张图片

<[if gte mso 9]> false 5.25 磅 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE MicrosoftInternetExplorer4 <[if gte mso 9]> <[if gte mso 10]> <[endif]><[if gte mso 9]> <[if gte mso 9]>

<[if gte vml 1]> <[if !vml]><[endif]>

从上图我们可以看清楚企业库日志应用程序模块的工作原理,妻子Log Filter,Trace Source,Trace Listener,Log Formatter的信息都可以在Category配置文件中反映出来,通过配置文件,调用LogWriter类的Writer方法,就可以将包含日志信息的LogEntry实体写入Category配置文件中指定的设备了.



企业库日记应用程序模块提供了下列几种记录方法:

  • <[if !supportLists]> The event log
  • <[if !supportLists]> <[endif]>An e-mail message
  • <[if !supportLists]> A database
  • <[if !supportLists]> <[endif]>A message queue
  •  A text file
  • <[if !supportLists]> A Windows® Management Instrumentation (WMI) event
  • <[if !supportLists]> Custom locations using application block extension points

本文介绍一下如何使用企业库日记应用程序模块向日志文件,数据库,XML文件中写入程序操作日记:


<[if !supportLists]>一.  <[endif]>向日志文件写入日记

 

<[if !supportLists]>1.       <[endif]>运行EntLibConfig.exe, 选择Blocks菜单 ,单击 Add Logging Settings .

<[if gte vml 1]> <[if !vml]>Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第2张图片<[endif]>

 

<[if !supportLists]>2.       <[endif]>对每个模块进行配置:

<[if gte vml 1]> <[if !vml]>Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第3张图片<[endif]>

 

<[if !supportLists]>3.       <[endif]>点击 File 菜单,单击 Save,保存为一个App.config文件,可以先保存到桌面,之后要用到它.

 

<[if !supportLists]>4.       <[endif]>创建一个新的控制台应用程序,App.config添加到程序内,并加入需要的Dll文件,在此我们要导入的是 Microsoft.Practices.EnterpriseLibrary. Logging.dll, Microsoft.Practices.EnterpriseLibrary. Logging.Database.dll并添加需要的引用:

<[if gte vml 1]> <[if !vml]>Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第4张图片

<[endif]>

添加引用:

      
    
    
    
<

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

> using Microsoft.Practices.EnterpriseLibrary. Logging;

 


 

 

<[if !supportLists]>5.       <[endif]>测试:

      
    
    
    
<

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

> using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.Practices.EnterpriseLibrary.Logging;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
LogEntry logEntry
= new LogEntry();

logEntry.EventId
= 1;
logEntry.Priority
= 1;
logEntry.Title
= "标题党";
logEntry.Message
= "http://www.cnblogs.com/huangcong/";
logEntry.Categories.Add(
"C#学习");
logEntry.Categories.Add(
"Microsoft Enterprise Library学习");

Logger.Writer.Write(logEntry,
"General");
Console.WriteLine(
"日志写入完成!");
}
}
}

 


 

运行结果:

Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第5张图片
<[if gte vml 1]> <[if !vml]>

<[endif]>

<[if !supportLists]>6.       <[endif]>开始控制面板系统和安全查看事件日志—Windows日志应用程序:

Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第6张图片
<[if gte vml 1]> <[if !vml]>

<[endif]>

<[if !supportLists]>7.       <[endif]>第一个日志就是我们刚刚写入的日志啦,双击可以查看内容:

<[if gte vml 1]> <[if !vml]>Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第7张图片

 

<[endif]>

 

<[if !supportLists]>二.  <[endif]> 向数据库写入日记

<[if !supportLists]>1.       <[endif]>要将日志写入数据库,就得先新建一个日志数据库,我们可以在EntLib50Src文件夹下的Source\Blocks\Logging\Src\DatabaseTraceListener\Scripts目录中找到LoggingDatabase.sql文件,只要在数据库中运行即可自动生成一个日志数据库:

<[if gte vml 1]> <[if !vml]>Microsoft Enterprise Library 5.0 系列(四) Logging Application Block_第8张图片

<[endif]>

为了方便大家,我直接将该文件发布在下面,大家直接复制到SQL中运行也可以:

 

0
原文地址: http://www.cnblogs.com/huangcong/archive/2010/06/01/1748672.html

你可能感兴趣的:(Microsoft Enterprise Library 5.0 系列(四) Logging Application Block)