public void ResetRedirectLog() { if (null != _redirection) { if (null != _cachedLogWriter) { _cachedLogWriter.Active = true; _cachedLogWriter = null; } if (_redirectlogger != null && null != _redirectedWriter) { _redirectedWriter.Active = false; _redirectlogger.Writers.Remove(_redirectedWriter); } Loggy.OnChangeManager -= OnLoggyManager; if (null != _cachedAppender) { _cachedAppender.Active = true; _cachedAppender = null; } if (null != _redirectedManager) { Loggy.Default.Appenders.Remove(_redirectappender); } _redirection.Flush(); _redirection = null; _redirectedWriter = null; _redirectlogger = null; _redirectappender = null; _redirectconsole = false; _redirectedManager = null; } }
private void SetupLoggyRedirection(ILoggyManager manager) { if (_redirectedManager == manager) { return; } _redirectedManager = manager; _loggy = manager.Get(); _redirectappender = new TextWriterAppender(_redirection) { Format = LogFormat }; _loggy.Appenders.Add(_redirectappender); if (_redirectconsole) { _cachedAppender = _loggy.Appenders.OfType <ConsoleAppender>().FirstOrDefault(); if (null != _cachedAppender) { _cachedAppender.Active = false; } } }
private void OnLoggyManager(ILoggyManager manager) { SetupLoggyRedirection(manager); }