NLog简介
NLog是一个简单灵活的.NET日志记录类库,NLog的API非常类似于log4net,配置方式非常简单。支持多种形式输出日志:文本文件、系统日志、数据库、控制台、邮箱等
1.NLog简介
在nuget控制台输入安装nlog命令: Install-Package NLog.Config
Nlog配置的方式常用的有两种
1.直接在使用应用程序配置文件或者web的配置文件(app.config / web.config)
2.NLog.config 这个是比较好的一个形式(推荐)
配置文件中的主要标签是:targets和rules:
- 定义日志的目标/输出,下级是
- 定义日志的路由规则,下级是
2.标签介绍
标签
autoReload 修改配置文件后是否允许自动加载无须重启程序
throwExceptions 内部日志系统抛出异常(建议throwExceptions的值设为“false”,这样由于日志引发的问题不至于导致应用程序的崩溃。)
internalLogLevel 可选Trace|Debug|Info|Warn|Error|Fatal决定内部日志的级别 Off 关闭
internalLogFile 把内部的调试和异常信息都写入指定文件里
标签
定义了日志的输出,可以设置文件名称和格式,输出方式。
name 自定义该target的名字,可供rule规则里使用
type 定义类型,官方提供了很多可选类型,常用的还是 File \Database \Colored Console\ Mail
layouts 用来规定布局样式,语法“${属性}”,可以把上下文信息插入到日志中,官方提供的可以用的属性见文末附录
标签
定义日志的记录规则,记录范围
name 记录者的名字
minlevel 最低级别
maxlevel 最高级别
level 单一日志级别
levels 一系列日志级别,由逗号分隔。
标签
变量定义
3.一个简单的栗子
把日志记录到彩色控制台,log文本文件和mysql数据库。首先添加Nlog.config文件如下,放在控制台项目的bin/debug目录下
INSERT INTO tbLog(Timestamp,Level,Message,StackTrace) VALUES(@time_stamp, @le