public AutoTrace(ILogMessageWriter logWriter, Func <string> messageFactory, [CallerMemberName] string caller = "", params KeyValuePair <string, string>[] customProperties) { try { if (logWriter == null) { return; } if (messageFactory == null) { return; } if (string.IsNullOrEmpty(caller)) { return; } m_Caller = caller; if (logWriter.IsTraceEnabled) { m_LogMessageWriter = logWriter; m_Message = GetMessage(messageFactory); m_StartTime = s_StopWatch.Elapsed; m_LogMessageWriter.WriteLogEntry(LogLevel.Trace, () => LogFormatters.TraceEnter(m_Message), m_Caller, customProperties: customProperties); m_TraceStackHandle = TraceStack.Push(LogFormatters.ContextPart(m_Caller)); } } catch (Exception ex) { Trace.WriteLine(ex); } }
ILogMessageWriter[] CreateWriters(Type type) { var writers = new ILogMessageWriter[_creators.Length]; for (var i = 0; i < _creators.Length; ++i) { writers[i] = _creators[i].CreateFor(type); } return(writers); }
public AsyncLogging(ILogMessageWriter logMessageWriter, TimeSpan writeInterval, TimeSpan disposeInterval) { _logMessageWriter = logMessageWriter ?? throw new ArgumentNullException(nameof(logMessageWriter)); WriteInterval = writeInterval; DisposeWaitingInterval = disposeInterval; }
public YamlLoggerSync(ILogMessageWriter logMessageWriter) { _logMessageWriter = logMessageWriter ?? throw new ArgumentNullException(nameof(logMessageWriter)); }