zoukankan      html  css  js  c++  java
  • NLog路由规则和上下文信息

    NLog配置路由规则和上下文信息

    rules: 规则节点

    logger:一个路由规则

     <rules>
            <!--<logger name="*" writeTo="console" />-->
            <logger name="*" minlevel="Debug" writeTo="debugger" />
            <logger name="*" minlevel="Error" writeTo="error_file" />
        </rules>

    具体参数说明:

    路由规则主要用于将日志和输出目标匹配起来,它一般有如下几个属性

    • name - 日志源/记录者的名字 (允许使用通配符*)
    • minlevel - 匹配日志范围的最低级别
    • maxlevel - 匹配日志范围的最高级别
    • level - 匹配的单一日志级别
    • levels - 匹配的一系列日志级别,由逗号分隔。
    • writeTo - 规则匹配时日志应该被写入的一系列目标<target>节点的name属性,由逗号分隔。
    • final - 标记当前规则为最后一个规则。其后的规则即时匹配也不会被运行。

    如:

    1. <logger name="Name.Space.Class1" minlevel="Debug" writeTo="f1" /> - 名字空间Name.Space下的Class1这个类的所有级别等于或者高于Debug的日志信息都写入到“f1”这个目标里。
    2. <logger name="Name.Space.Class1" levels="Debug,Error" writeTo="f1" /> -名字空间Name.Space下的Class1这个类的所有级别等于Debug或Error的日志信息都写入到“f1”这个目标里。
    3. <logger name="Name.Space.*" writeTo="f3,f4" /> -名字空间Name.Space下所有类的所有级别的日志信息都写入到“f3”和“f4”这两个目标里。
    4. <logger name="Name.Space.*" minlevel="Debug" maxlevel="Error" final="true" /> - 名字空间Name.Space下所有类的、级别在Debug和Error之间的(包括Debug,Info,Warn,Error) 日志信息都不会被记录(因为这条规则没有定义writeTo),同时其它后续规则也都会被忽略(因为这里设置了final="true")。

    NLog支持如下几种记录等级:

    1. Trace- 最常见的记录信息,一般用于普通输出
    2. Debug- 同样是记录信息,不过出现的频率要比Trace少一些,一般用来调试程序
    3. Info- 信息类型的消息
    4. Warn- 警告信息,一般用于比较重要的场合
    5. Error- 错误信息
    6. Fatal- 致命异常信息。一般来讲,发生致命异常之后程序将无法继续执行。

    优先级:Trace>Debug>Info>Warn>Error>Fatal

    Layout上下文信息 表达式

    ${date}        日期2016/08/11 09:34:33.793

    ${time}        24小时HH:mm:ss.mmm.

    ${longdate}    长时间 2016-08-05 14:06:18.9293

    ${shortdate}   日期2016-08-05

    ${basedir}     根目录

    ${message}    信息

    ${level}    级别

    ${stacktrace}   堆栈信息

    ${callsite}   日志来源

  • 相关阅读:
    贪心算法1000
    贪心算法1006
    1012
    贪心算法1016
    贪心算法1001
    贪心算法1004
    Java作业1
    指针数组与数组指针的区别
    Java 中对类进行排序的方法(转)
    java习题1
  • 原文地址:https://www.cnblogs.com/tongyi/p/5825526.html
Copyright © 2011-2022 走看看