下载插件

修改program配置
#region Nlogin
{
builder.Logging.AddNLog("CfgFile/Nlog.config");
}
#endregion
创建Nlog.config配置
<?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"
xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
autoReload="true"
throwExceptions="false"
internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">
<variable name="appName" value="ConsoleAppDemo"/>
<targets>
<target name="logconsole" xsi:type="Console"
layout="${longdate} [${uppercase:${level}}] ${callsite}(${callsite-filename:includeSourcePath=False}:${callsite-linenumber}) - ${message} ${exception:format=ToString}"
/>
<target name="logfile"
xsi:type="File"
fileName="${basedir}/logs/${appName}-${shortdate}.log"
layout="${longdate} [${uppercase:${level}}] ${callsite}(${callsite-filename:includeSourcePath=False}:${callsite-linenumber}) - ${message} ${exception:format=ToString}"
maxArchiveFiles="999"
archiveFileName="${basedir}/logs/${appName}-${shortdate}-${###}.log"
createDirs="true"
archiveAboveSize="102400"
archiveEvery="Day"
encoding="UTF-8"
/>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="logfile" />
</rules>
</nlog>
设置文件属性

controller
using Microsoft.AspNetCore.Mvc;
using NLog;
using System.Diagnostics;
using WebApplication3.Models;
namespace WebApplication3.Controllers
{
public class SecondController : Controller
{
private readonly ILogger<SecondController> _logger;
private readonly ILoggerFactory _loggerFactory;
private readonly Logger logger = LogManager.GetCurrentClassLogger();
public IActionResult Index()
{
logger.Info("启动成功");
logger.Warn("警告信息");
logger.Trace("一般信息");
logger.Error("错误信息");
logger.Fatal("严重信息");
return View();
}
public IActionResult Privacy()
{
return View();
}
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}
public SecondController(ILogger<SecondController> logger, ILoggerFactory loggerFactory)
{
this._logger = logger;
this._logger.LogInformation($"{this.GetType().Name} 被构造了...");
this._loggerFactory = loggerFactory;
ILogger<SecondController> _logger2= this._loggerFactory.CreateLogger<SecondController>();
_logger2.LogInformation($"{this.GetType().Name} 被构造了...logger2");
}
}
}
查看日志文件


参考地址
blog.csdn.net/qq_33182090…