/// <summary> /// 初始化一个<see cref="Log{TCategoryName}"/>类型的实例 /// </summary> /// <param name="logger">日志记录包装器</param> /// <param name="logContextAccessor">日志上下文访问器</param> public Log(ILoggerWrapper <TCategoryName> logger, ILogContextAccessor logContextAccessor = null) { Logger = logger ?? throw new ArgumentNullException(nameof(logger)); LogContext = logContextAccessor?.Context; LogProperties = new Dictionary <string, object>(); LogMessage = new StringBuilder(); LogMessageArgs = new List <object>(); }
/// <summary> /// 测试初始化 /// </summary> public LogTest(IServiceProvider serviceProvider, ILog <LogTest> log, ILogContextAccessor accessor) { serviceProvider.UseBing(); _log = log; accessor.Context = new LogContext { Stopwatch = Stopwatch.StartNew(), TraceId = Id.NewString() }; }