public static void LogException(DiagSeverity severity, String message, Exception ex) { Monitor.Enter(s_LockObject); try { PrefixForSeverity(severity); PrefixDateTime(); Trace.WriteLine(message); String exceptionText = GetExceptionText(ex); Trace.WriteLine(exceptionText); Trace.Flush(); if ((severity == DiagSeverity.ApplicationFatal) || (severity == DiagSeverity.ComponentFatal)) { String fullMessage = String.Format(CultureInfo.InvariantCulture, "{0}:{1}", message, exceptionText); LogMessageToSysEventLog(fullMessage); } } catch (System.Exception) { } finally { Monitor.Exit(s_LockObject); } }
public static void PrefixForSeverity(DiagSeverity severity) { try { switch (severity) { case DiagSeverity.ApplicationFatal: Trace.Write("!!! "); break; case DiagSeverity.ComponentFatal: Trace.Write("!!- "); break; case DiagSeverity.Warning: Trace.Write("!-- "); break; case DiagSeverity.Information: default: Trace.Write("--- "); break; } } catch (System.Exception) { } }
public static void LogMessage(DiagSeverity severity, String message) { Monitor.Enter(s_LockObject); try { PrefixForSeverity(severity); PrefixDateTime(); Trace.WriteLine(message); Trace.Flush(); if ((severity == DiagSeverity.ApplicationFatal) || (severity == DiagSeverity.ComponentFatal)) { LogMessageToSysEventLog(message); } } catch (System.Exception) { } finally { Monitor.Exit(s_LockObject); } }