NLog路由规则和上下文信息知识点总结

 更新时间:2019年10月28日 17:14:29   作者:统哥  
在本篇文章里小编给各位整理的是关于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 - 标记当前规则为最后一个规则。其后的规则即时匹配也不会被运行。

如:

<logger name="Name.Space.Class1" minlevel="Debug" writeTo="f1" /> - 名字空间Name.Space下的Class1这个类的所有级别等于或者高于Debug的日志信息都写入到“f1”这个目标里。

<logger name="Name.Space.Class1" levels="Debug,Error" writeTo="f1" /> -名字空间Name.Space下的Class1这个类的所有级别等于Debug或Error的日志信息都写入到“f1”这个目标里。

<logger name="Name.Space.*" writeTo="f3,f4" /> -名字空间Name.Space下所有类的所有级别的日志信息都写入到“f3”和“f4”这两个目标里。

<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} 日志来源

以上就是全部关于NLog路由规则和上下文信息的知识点内容,感谢大家的支持。

相关文章

  • Asp.net中防止用户多次登录的方法

    Asp.net中防止用户多次登录的方法

    在web开发时,有的系统要求同一个用户在同一时间只能登录一次,也就是如果一个用户已经登录了,在退出之前如果再次登录的话需要报错。
    2008-08-08
  • .NET全局静态可访问IServiceProvider的过程详解(支持Blazor)

    .NET全局静态可访问IServiceProvider的过程详解(支持Blazor)

    为解决在静态方法中访问依赖注入(DI)容器的问题,提出了通过DependencyInjection.StaticAccessor包实现静态访问,这一方法特别适用于需要在静态方法中获取范围内(Scoped)服务的场景,感兴趣的朋友跟随小编一起看看吧
    2024-09-09
  • 使用Visual Studio创建ASP.NET Web API项目

    使用Visual Studio创建ASP.NET Web API项目

    这篇文章介绍了使用Visual Studio创建ASP.NET Web API项目的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-03-03
  • ADO.NET通用数据库访问类

    ADO.NET通用数据库访问类

    这篇文章主要为大家介绍了ADO.NET通用数据库访问类,利用ADO.NET的体系架构打造通用的数据库访问通用类,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • .NET读写Excel工具Spire.Xls使用 对数据操作与控制(4)

    .NET读写Excel工具Spire.Xls使用 对数据操作与控制(4)

    这篇文章主要为大家详细介绍了.NET读写Excel工具Spire.Xls使用,对数据操作与控制的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • ASP.NET 常用 文件上传方法

    ASP.NET 常用 文件上传方法

    文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给出几种常见的方法
    2009-07-07
  • asp.net生成静态页并分页+ubb

    asp.net生成静态页并分页+ubb

    编程思路生成静态页其实只有内容部分是需要分页的,生成静态页并分页的步骤是在textarea或者在线编辑器中,需要分页的地方就插入一个[ page ]
    2008-10-10
  • asp.net 获取Datalist中Checkbox的值的小结

    asp.net 获取Datalist中Checkbox的值的小结

    最近开发过程中遇到一个小问题,要获取checkbox的值,在网上搜索了一下,发现基本上都是用JS实现的,现在我将自己的做法记录一下,以便以后继续使用。
    2010-04-04
  • GridView自定义分页实例详解(附demo源码下载)

    GridView自定义分页实例详解(附demo源码下载)

    这篇文章主要介绍了GridView自定义分页的方法,结合实例形式较为详细的分析了GridView自定义分页所涉及的样式布局及功能实现相关技巧,并附带demo源码供读者下载参考,需要的朋友可以参考下
    2016-03-03
  • 如何解决ASP.NET新增时多字段取值的问题

    如何解决ASP.NET新增时多字段取值的问题

    这篇文章主要介绍了ASP.NET新增时多字段取值解决方案,从解题思路出发分析原因,
    2015-09-09

最新评论