NLog日志(二)
NLog
//日志输出
builder.Logging.ClearProviders();
builder.Logging.AddNLog("nlog.config");
配置后默认自动全部输出
需求:自动记录的输出到控制台,手动记录的输出到日志文件
1.配置两个日志记录器 一个控制台,一个日志文件
<rules>
<!-- 默认日志记录器(仅控制台输出) -->
<logger name="*" minlevel="Debug" writeTo="logconsole" />
<!-- 仅手动调用时才写入文件 -->
<logger name="ManualFileLogger" minlevel="Debug" writeTo="logfile" />
</rules>
2.控制器类中
public readonly ILogger<KnowTypeController> _logger; // 这个是引用NLog包后,注入到容器后,现在这个是从容器里拿的 private static readonly Logger _fileLogger = LogManager.GetLogger("ManualFileLogger"); // 这个直接从NLog中拿 //构造函数注入 public KnowTypeController(IKnowTypeSe knowTypeSe, ILogger<KnowTypeController> logger) : base() { _logger = logger; }
控制器HTTP方法(){
// 这条日志 **仅输出到控制台**
_logger.LogInformation("这是控制台日志");
// 这条日志 **仅写入文件**
_fileLogger.Info("这是手动写入文件的日志");
}

静,静,静

浙公网安备 33010602011771号