0
我有一個web應用程序,我已經在其中實現了日誌記錄(使用Common.Logging),它現在將日誌消息保存到數據庫。但是在系統的一部分,一個導入過程中,我只想呈現與該導入過程相關的日誌消息(用戶實例化的),而不是累積的日誌消息。組日誌消息
下面你看到我的ImportProcessor,這取決於ILog的(從Common.Loggning)和一些進口元件,這也取決於ILog的和一些其他的東西代碼..
ILog的注射用DI( autofac),其中Logname是自動解析的。
public class ImportProcessor
{
private readonly ILog log;
private readonly IImportFetcher fetcher;
private readonly IImportFormatter formatter;
private readonly IEnumerable<IImportFilter> filters;
private readonly IEnumerable<IImportExporter> exporters;
internal ImportProcessor(ILog log, IImportFetcher fetcher, IImportFormatter formatter, IEnumerable<IImportFilter> filters, IEnumerable<IImportExporter> exporters)
{
this.log = log;
this.fetcher = fetcher;
this.formatter = formatter;
this.filters = filters;
this.exporters = exporters;
}
public void Execute()
{
log.Info("Import starts");
var rawdata = fetcher.Fetch();
var importDatas = formatter.Transform(rawdata);
foreach (var filter in filters)
{
importDatas = filter.Filter(importDatas);
}
foreach (var exporter in exporters)
{
exporter.Export(importDatas);
}
log.Info("Import done");
}
}
對於如何將與該ImportProcessor相關的所有Log消息進行分組,您有什麼好的建議嗎?