/// <summary> /// Starts the trace listners. /// </summary> public static void StartTraceListners(string logFilePrefix = "RulePerf") { string logFilePath = "{1}-{0}.log".FormatWith(DateTime.Now.ToString("yyyy-MM-ddThh-mm-ssZ"), logFilePrefix); logFilePath = System.IO.Path.Combine(System.Reflection.Assembly.GetExecutingAssembly().Location, logFilePath); TextWriterTraceListener textWriterTraceListener = new TextWriterTraceListener(logFilePath, "logListener"); ConsoleTraceListener consoleTraceListener = new ConsoleTraceListener(); ////Trace.Listeners.Clear(); if (!Trace.Listeners.Contains(textWriterTraceListener.GetType(), textWriterTraceListener.Name)) { Trace.Listeners.Add(textWriterTraceListener); } else { textWriterTraceListener.Dispose(); } if (!Trace.Listeners.Contains(consoleTraceListener.GetType())) { Trace.Listeners.Add(consoleTraceListener); } else { consoleTraceListener.Dispose(); } Trace.AutoFlush = true; }
/// <summary> /// Start the logging service /// </summary> public override void AddListener(string LogFile) { Trace.Listeners.Clear(); try { twtl = new TextWriterTraceListener(LogFile); try { ctl = new ConsoleTraceListener(false); Trace.Listeners.Add(twtl); Trace.Listeners.Add(ctl); Trace.AutoFlush = true; } finally { if (ctl != null) { ctl.Dispose(); } } } finally { if (twtl != null) { twtl.Dispose(); } } }
/// <summary> /// Stops and disposes of the logging service /// </summary> public override void RemoveListener() { Trace.Listeners.Remove(twtl); Trace.Listeners.Remove(ctl); Trace.Close(); if (ctl != null) { ctl.Close(); ctl.Dispose(); } if (twtl != null) { twtl.Close(); twtl.Dispose(); } }
public static void Teardown() { Debug.Unindent(); Debug.Listeners.Remove(traceListener); traceListener.Dispose(); }