NetCore 中使用Nlog 简单几步搞定

2020-12-18  乐帮网

netcore nlog

NetCore使用Nlog是件很容易的事情,只需要我们在程序启动前简单的几行配置它就能很好的纳入我们的框架中。不管是Service 还是Web,还是桌面应用程序,使用过程都一样。下面以Web程序为示例来说一下怎么把Nlog引入到我们的框架当中。
下面记录一下我的使用过程

(1)新建一个ASP.NET Core Web应用程序。

(2)使用NuGet添加 NLog.Config和NLog.Web.AspNetCore两个包。

(3)在根目录添加NLog.config配置文件,并且把文件属性设置成总是复制。
Nlog.config的配置内容 可参看:https://lebang2020.cn/details/20121721es02k3.html

(4)在程序的Host中添加日志的注入,我们的示例中就是 Program.cs文件。代码如下:

 public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                }).ConfigureLogging(logging => { //using NLog.Web;
                    logging.ClearProviders();
                    //下面这行不要加,在appsetting上默认有配置节 网上大多都人云亦云
                    //logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
                }).UseNLog();
    }

(5) 下面我们验证一下日志是否可用,在网站的首页 Index.cshtml.cs 中的Get添加日志记录。

  public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }

        public void OnGet()
        {
            _logger.LogInformation("vkt.nlog.demo.web say hello word.");
        }
    }

(6) 在 visual studio 中直接运行项目,显示首页。然后在bin\Debug\netcoreapp3.1目录中会自建一个文件夹Logs,打开目录会看到日志文件,文件中正是我们输出的内容

2020-12-18 11:25:48 INFO: vkt.nlog.demo.web say hello word.

至此我们的NLog添加过程就完成了。以上就是全部代码。

简单的教程并不粗糙,如果还是不明白怎么做可以下载我写好源码:
链接:https://pan.baidu.com/s/1JNYHzNibYcOVL7LJm7ghYA 

获取提取码请先点击捐赠按钮。

相关文章:

Net Core Service开发使用Nlog

本文地址

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力