有一萬個理由,按業務輸出日誌,關注某個業務的變化,磁盤夠大的話,仍然可以在一個主文件中再寫一份日誌,即一份日誌寫全部的日誌,另一些日誌,則按業務分開這些文件,最普通的做法是按日誌等級輸出到不同的文件。
如果喜歡針對不同的業務創建一個logger來實現記錄,可以考慮以下方法
LoggerConfiguration配置
logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.Enrich.FromLogContext().WriteTo.Map(
"LoggerName", //不要直接去訪問Properties
(name, wt) => rollingFile(wt, $"logs\\{name}_.log")
).CreateLogger();
@@#
Logger管理(添加屬性LoggerName)
public ILogger GetLogger(string loggerName)
{
if (loggers.TryGetValue(loggerName, out var logger))
return logger;
else
{
return logger.ForContext("LoggerName", name, true); }
}
}
@@#
輸出的文件