zoukankan      html  css  js  c++  java
  • 微软企业库4.1学习笔记(三十六)日志模块 简介

    日志模块

    企业库的日志模块简单的实现了日志功能的常用功能。开发者可以利用模块在下面的位置记录信息:

    •          事件日志
    •          电子邮件
    •          数据库
    •          消息队列
    •          文本文件
    •          WMI的事件查看器
    •          自定义的位置

    模块为记录在任何位置的日志信息都提供了一系列接口。在你的应用中不需要指明信息的目的地。配置信息决定了是否记录日志,以及日志记录的位置。这就意味着开发者不需要修改应用代码就可以变更日志的行为。

             本节包含下面的内容:

    •          简介
    •          使用模块进行开发
    •          典型解决方案
    •          模块的设计目的
    •          扩展和修改模块
    •          部署和实施模块
    •          示例代码
    •  

       1、  简介

    通过下面的主题,你可以发现模块是否适合于你。

    常用方案

    开发者在开发过程中经常需要日志功能。典型的,响应应用事件的格式和日志信息。例如,开发者经常会写一些代码来记录非预期的日志,例如异常、或者是连接数据库失败。也包括一些跟踪应用流程的过程,参数的传递等等。

    应用需要记录本地和网络的信息。某些情况,你还需要将多个位置的信息整理到一个目的地。

             日志模块通过封装的一些列方法,简化了上面这些需求的实现。包括:

    •          用代码增加和引发事件
    •          增加带有其他环境信息的日志消息
    •          跟踪应用的行为,增加上下文信息
    •          构造日志信息之前,检查filter的状态
    •          示例代码

      

      private void RecordSelectedCategories()
            {
                
                    categories.Add("Trace");
                
                
                
            }
            protected void Button1_Click(object sender, EventArgs e)
            {
               RecordSelectedCategories();
                LogEntry log = new LogEntry();
                log.EventId = 100;
                log.Priority = 3;
                log.Message = "information message";
                log.Categories = Categories;
                Logger.Write(log );
              
            }
            [NonSerialized]
            private ICollection<string> categories = new List<string>(0);
            [IgnoreMember]
            public ICollection<string> Categories
            {
                get { return categories; }
                set { this.categories = value; }
            }

      什么时候选用日志模块

      如果你的应用需要将日志信息记录到windows事件中,邮件中,数据库中,消息队列中,WMI中,或者是一个文件中,你可以考虑使用模块。在某些情况,日志模块非常有用,例如,你需要在优先级和目录上过滤日志,你需要格式化日志信息,你需要在不修改代码的情况下变更日志的记录位置。日志模块设计的很灵活,可以自定义格式和trace listener,满足你的特定需要。

      日志的信息默认是明文记录的,如果又需要的话,可以通过访问控制列表来控制访问日志文件的用户,也可以自定义格式实现日志信息的加密。

      2、在应用中使用日志模块

      配置日志模块,如下图所示,右键菜单中选择【Logging Application Block】.

      

     

       

  • 相关阅读:
    变量
    总结 对象
    学生管理系统
    [Altera] Device Part Number Format
    [Matlab] sum
    [Matlab] Galois Field
    [C] static和extern的作用
    [Python] list
    [Python] raw_input
    [软件] UnicornViewer
  • 原文地址:https://www.cnblogs.com/DoNetCShap/p/2295517.html
Copyright © 2011-2022 走看看