Net Core平台灵活简单的日志记录框架NLog初体验
前几天分享的"[Net Core集成Exceptionless分布式日志功能以及全局异常过滤][https://www.cnblogs.com/yilezhu/p/9339017.html]" 有人说比较重量,生产环境部署也比较麻烦。因此就有了今天的这篇文章。如果你的项目(网站或者中小型项目)不是很大,日志量也不多的话可以考虑NLog+Mysql的组合。因为NLog具有高性能,易于使用,易于扩展和灵活配置的特点能够让你快速集成日志记录功能。
作者:yilezhu
本文链接 :https://www.cnblogs.com/yilezhu/p/9416439.html
NLog是什么?
这里还是简单介绍一下吧,为了让小白也知道。NLog是一个灵活的免费日志记录平台,适用于各种.NET平台,包括.NET Core。NLog可以通过简单地配置就可以可以很方便的写入多个日志仓库中(数据库,文件,控制台)。
NLog在Net Core中怎么用啊?
用之前你得新建一个asp.net core项目吧。这里以net core api为例吧。如下图所示是博主刚刚创建的net core api项目。
建好项目之后干什么呢、当然得添加引用了。你可以随心所欲的使用Nuget或者命令进行安装
Install-Package NLog -Version 4.5.7
Install-Package NLog.Web.AspNetCore -Version 4.5.4
上面说了,NLog只需要简单地修改配置就可以使用,那接下来就是新建一个NLog配置文件了。你可以通过Nuget或者程序包控制台进行安装,也可以自己新建一个NLog.config文件。这里还是通过程序包控制台进行安装吧
Install-Package NLog -Version 4.5.7
安装后看到项目目录多了一个NLog.config文件。这里需要注意,右键设置一下这个NLog.config的属性为“始终复制”
打开Nlog.config文件,看看里面的结构,发现有两个重要节点,一个是
上面的代码中我是以写入mysql为例进行的NLog配置。下面就可以进行简单地使用了。首先需要在。首先在Startup中的Configure中来加入中间件:
在Program中进行如下配置:
下面就可以在代码中愉快的玩耍了,
下面运行起来项目,然到数据库里面就可以看到记录的日志信息如下所示:
这里大家可能会问,为什么没有Debug信息输出呢,这是因为我们上面NLog配置设置的记录日志的最低级别为Info.所以比Info级别小的Debug信息不会记录。如果想记录的话就把这个级别设置成Debug或者比Debug小的Trace就可以记录了。如下图所示:
总结
本文开头讲述了分布式日志记录框架Exceptionless部署困难说起,然后引出轻量级简单易用的NLog日志框架,并通过一个简单地api项目讲述了NLog如何在Net Core中使用。并且给出了NLog日志记录在mysql中的使用配置。以及mysql的建表语句。希望能对大家有所参考!
原文地址:https://www.cnblogs.com/yilezhu/p/9416439.html
.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com