.Net Core Web/Console 下使用Nlog

 

 .Net Core Console 下使用Nlog

官方介绍:

 https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-(csproj---vs2017)

 

 部署:  

     Windows 任务计划程序部署时 需要设置启动目录,  否则无法正确解析appsetting.json

    

 

 

很重要的三点

1. 设置nlog.config的属性为 Copy Always

 

2.修改nlog.config后,Clean项目文件,重新编译项目 否则配置不一定是最新的

 

3.添加引用nlog.config文件

 //添加日志
            var serviceProvider = new ServiceCollection()
                .AddLogging(builder =>
                {
                    builder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
                    builder.AddNLog(new NLogProviderOptions
                    {
                        CaptureMessageTemplates = true,
                        CaptureMessageProperties = true
                    });
                })
                .BuildServiceProvider();

            //添加Nlog配置
            var factory = serviceProvider.GetService<ILoggerFactory>();
            factory.AddNLog();
            LogManager.LoadConfiguration("nlog.config");
            
            var logger = serviceProvider.GetService<ILogger<Program>>();
            logger.LogInformation(" hello .net core console ");

 

 

 使用appsetting.json文件

      

posted @ 2019-03-15 16:49  静思长远  阅读(990)  评论(0编辑  收藏  举报