.Net Core3.1使用 NLog日志

安装NLog.Web.AspNetCore

//Startup.cs类
using Microsoft.Extensions.Logging;
//Configure方法
public void Configure(IApplicationBuilder app, IHostEnvironment env, ILoggerFactory loggerFactory)


Program.cs类
using NLog.Web;
//CreateHostBuilder方法  添加UseNLog()
public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args).UseNLog()
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });

使用

//定义于方法外
public NLog.Logger _log = NLog.Web.NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();

//使用
_log.Info("Error Information");

nlog.config 文件 拷贝至项目目录
日志存在 C:/logs/当前日期.txt

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true" internalLogLevel="Warn"   internalLogFile="internal-nlog.txt">
  <!--define various log targets-->
  <targets>
    <target name="file" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
      <target xsi:type="File" fileName="C:/logs/${shortdate}.txt" layout="${time} ${uppercase:${level}} ${message} ${stacktrace}" />
    </target>
  </targets>
  <rules>
    <logger name="*" minlevel="Info" writeTo="file" />
  </rules>
</nlog>
posted @ 2021-07-29 15:33  kele-cc  阅读(132)  评论(0)    收藏  举报