NLog是一个基于.NET平台编写的类库,我们可以使用NLog在应用程序中添加极为完善的跟踪调试代码。
NLog虽然没有log4net框架的流行程度高,但是它的跨平台性、开源持续维护性、性能等方面优于log4net,具体可以看下面这篇文章:
日志框架对比 NLog VS Log4net - fengrui - 博客园
.Net Core程序记录日志到文本文件中,下面用代码来演示如何实现:
基于.Net Core WebApi 3.1程序,项目结构如下图:
1.NuGet应用程序集:NLog
2.在项目的根目录下创建配置文件nlog.config
并设置该文件为始终复制,确保改动配置文件实时生效。
3.项目中记录日志信息
using Microsoft.AspNetCore.Mvc;
using NLog;
namespace NLogProject.Controllers
{
[ApiController]
[Route("[controller]")]
public class WeatherForecastController : ControllerBase
{
private readonly Logger _logger = LogManager.GetCurrentClassLogger();
[HttpGet]
public void Get()
{
_logger.Trace("我是Nlog输出的Trace信息");
_logger.Debug("我是Nlog输出的Debug信息");
_logger.Info("我是Nlog输出的Info信息");
_logger.Warn("我是Nlog输出的Warn信息");
_logger.Error("我是Nlog输出的Error信息");
_logger.Fatal("我是Nlog输出的Fatal信息");
}
}
}
程序执行后,默认会在项目的文件夹中生成对应日期的日志文件
日志文件信息:



