🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### 文章目录 交流之后,我决定先从NLog网站的介绍文档开始,逐步翻译并介绍NLog的使用方法,直至最终推出NLog的中文版网站。接下来我也可能加入NLog开发团队,当然这是后话。在翻译的过程中,我会不断将译文发表至我的Blog之上,以下是我计划的文章列表(链接指向原英文页面,翻译过后将加入中文文章链接): #### 文档部分 1. Tutorial(NLog文章系列——入门教程(上)、(中)、(下)) - NLog入门介绍 2. Configuration File - (如何配置NLog )配置文件介绍 3. Visual Studio Support - (与Visual Studio集成)Visual Studio中的snippets、智能感知等 4. Performance - NLog的性能 #### 参考部分 1. Targets - 日志信息的输出目标 2. Layouts - 日志信息的输出格式(纯文本、XML、CSV) 3. Layout Renderers - 指定输出信息中包含的内容(日期、时间、类名、方法名……) 4. Filters - 过滤输出信息 5. Conditions - 过滤信息时用到的简单谓词语言 #### How to部分 1. How to write your own Target - 如何编写自定义的输出目标(Target) 2. How to write your own Layout Renderer - (如何写自定义布局生成器(Layout Renderer)) 3. How to write your own Filter - (如何编写自定义的过滤器(Filter) ) 4. How to write your own Condition Function - 如何编写自定义的条件函数(Condition Function) 5. How to optimize logging performance -(如何优化日志性能 ) 6. How to troubleshoot your logging problems - (如何排错 ) #### NLog简要介绍 (以下内容原文来自NLog网站的首页:http://www.nlog-project.org/) NLog是一个简单灵活的.NET日志记录类库。通过使用NLog,我们可以在任何一种.NET语言中输出带有上下文的(contextual information)调试诊断信息,根据喜好配置其表现样式之后发送到一个或多个输出目标(target)中。 NLog的API非常类似于log4net,且配置方式非常简单。NLog使用路由表(routing table)进行配置,但log4net却使用层次性的appender配置,这样就让NLog的配置文件非常容易阅读,并便于今后维护。 NLog遵从BSD license,即允许商业应用且完全开放源代码。任何人都可以免费使用并对其进行测试,然后通过邮件列表反馈问题以及建议。 NLog支持.NET、C/C++以及COM interop API,因此我们的程序、组件、包括用C++/COM 编写的遗留模块都可以通过同一个路由引擎将信息发送至NLog中。 NLog的.NET API的过滤信息功能执行效率很高,这样我们就可以一直保留程序中的日志写入代码,然后由NLog在运行时将其根据需要过滤掉。在一个1.6G单CPU笔记本电脑上,NLog每秒钟可以过滤掉1.5亿条日志写入语句!加上异步处理(asynchronous processing)以及其他包装程序(wrappers)的支持,NLog将成为一个极为强大的、且极具伸缩性的日志记录工具,