internal TraceLogManager(LogCastTraceListener listener, LogCastTraceListenerWorker worker) { if (listener == null) { throw new ArgumentNullException(nameof(listener)); } _worker = worker ?? throw new ArgumentNullException(nameof(worker)); _isTraceSourceWorker = !Trace.Listeners.Contains(listener); }
public LogCastTraceListenerWorker(LogCastTraceListener listener, StringDictionary attributes, IFallbackLogger fallbackLogger) { ParseListenerOptions(attributes); ParseLogCastOptions(attributes); FallbackLogger = fallbackLogger ?? new FileFallbackLogger(FallbackLogDirectory, DaysToKeepFallbackLogs); _messageRouter = new LogMessageRouter(ParseSkipPercentage(SkipPercentage)); // This case is mostly for scenario when a client uses trace methods directly // and doesn't use our ILogger/LogManager/LogConfig if (!LogConfig.IsConfigured && !LogConfig.IsInProgress) { LogConfig.Configure(new TraceLogManager(listener, this)); } }
public LogCastTraceListenerWorker(LogCastTraceListener listener, StringDictionary attributes) : this(listener, attributes, null) { }