Enterprise Library Step By Step系列(十四):创建基于消息队列(MSMQ)的异步日志...

创建基于消息队列(MSMQ)的异步日志<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

一.概述

Enterprise Library Step By Step系列里我们说过,日志和检测应用程序块主要由2部分组成:ClientDistributorClient负责创建消息,这些消息将由Distributor写入目标位置。Client根据分发策略(Distribution Strategies)发送消息到Distributor,在Application Block中提供了2个分发策略:In ProcessMSMQ,默认的是In Process策略。同步日志是在Client进程中完成的,而异步日志是利用了MSMQ来实现的,Client需要创建日志消息并发送到MSMQ消息队列。另外一个进程则等待到达的消息,并写入合适的日志接收池

应用程序块中包含一个Windows Service: MSMQ Distributor Service。当安装该服务后,该服务会在指定的时间间隔检测消息队列。

我们看一下日志和监测应用程序块处理的流程图:

 PIC016.gif

二.安装并配置MSMQ Distributor Service

1.打开Visual Studio命令行工具,切换到目录(默认的企业库安装路径)C:\Program Files\Microsoft Enterprise Library\bin下,运行如下命令:

None.gif installutil  / i MsmqDistributor.exe

注意:必须要以这种方式安装服务,否则安装不成功。

2.安装过程中会弹出一个设置服务登录对话框,要求输入用户名和密码。此时用户名和密码的形式必须以域用户的形式输入,用<.\username>的形式也是可以的,如下图所示:

 PIC009.JPG

3.启动服务。我们在服务管理器里面找到Enterprise Library Logging Distributor Service这项服务,手工启动它。

 PIC010.JPG

4.用文本编辑器打开MsmqDistributor.exe.config文件,删除如下这节:

None.gif < configurationSections >
None.gif    
< configurationSection  name ="loggingConfiguration"  encrypt ="false" >
None.gif      
< storageProvider  xsi:type ="XmlFileStorageProviderData"  name ="XML File Storage Provider"  path ="loggingConfiguration.config"   />
None.gif      
< dataTransformer  xsi:type ="XmlSerializerTransformerData"  name ="Xml Serializer Transformer" >
None.gif        
< includeTypes  />
None.gif     
</ dataTransformer >
None.gif
</ configurationSection >

5.用Configuration Console, 打开 MsmqDistributor.exe.config 文件

MSMQ Distributor Service 添加到 Distributor Settings,如下图所示:

 PIC011.JPG

6.设定 MsmqPath 属性匹配 Client 的队列名,我们可以修改MsmqPath的值,但是该值必须与我们应用程序中的Client配置的一致。

 PIC012.JPG

三.使用MSMQ创建异步日志

1.我们前面说过,Client Settings 决定分发策略,一个Client的所有消息使用同一个策略。所以我们不能同时创建两个策略,必须先删除In Process后,才能创建MSMQ

 PIC013.JPG

2.创建MSMQ分发策略之后,注意队列名必须和我们刚才在第二节里面所说的一致:

 PIC014.JPG

3.其他的操作就跟我在Enterprise Library Step By Step系列里面写的一样了。

请大家参考:

Enterprise Library Step By Step系列(七):日志和监测应用程序块——入门篇

Enterprise Library Step By Step系列(八):日志和监测应用程序块——进阶篇

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值