zoukankan      html  css  js  c++  java
  • (译)Windsor入门教程---第五部分 添加日志功能

    介绍

        现在我们已经有了基础的框架了,是时候添加内容了,那么我们首先应该考虑的就是在应用程序中添加日志功能。我们会使用Windsor来配置,在这一部分,你将学习Windsor之外的其他功能。

    Logging Facility

        在上一部分说过,Windsor有很多自带的可选的功能组件,他们扩展了Windsor的即用性。在这一部分,我们将在程序中添加日志功能。

        Logging Facility提供了一些常用的日志框架比如Log4net、Nlog,以及mvc内置的日志框架Trace。Logging Facility将提供一个抽象类,这样当你的程序切换其他日志框架的时候不会很麻烦。更重要的是,Facility根据需要提供Ilogger实例,不需要任何静态依赖。

    我们需要添加必须的包,启动Nuget's Package Manager Console并键入:

    Install-Package Castle.Windsor-log4net

    这将会把依赖想都添加到程序中:

    Installer

        接下来添加程序集的引用,创建一个Installer来添加日志功能到程序中:

    注意API的调用模式,泛型参数指定我们想要添加的类型,然后用lambda表达式制定类型为log4net.

        我们没有指定log4net的配置文件,默认的配置是在log4net.Config文件,这是log4net配置的核心文件。我们在程序中添加一个配置文件,包含标准的log4net配置信息:

    然后修改Installer类:

    What we just did?

        你可能会问:这怎么使用?你要做的就是调用Castle.Core.Logging.Ilogger命名空间下的Ilogger接口(常用的做法是使用属性,而不是构造函数)。容器将提供配置并且准备使用Ilogger实例。为了说明我们在AccountController中添加了一个警告日志,当用户登录密码错误时记录日志:

    如果log4net的配置是正确的,那么现在登录错误的日志将被记录。

  • 相关阅读:
    经典排序算法之直接选择排序
    经典排序算法之归并排序
    经典排序算法之希尔排序
    MAC自带的SVN进行升级
    磁盘随机读写与顺序读写性能对比
    事务锁与脏读、不可重复读、幻读
    处理vue页面406问题纪要
    url-pattern / 与/* 的区别
    打印 request 请求中的参数
    [转] Slf4j MDC机制
  • 原文地址:https://www.cnblogs.com/xuquantong/p/3769102.html
Copyright © 2011-2022 走看看