Beispiel #1
0
        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);
            }
        }
Beispiel #2
0
        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)
            {
            }
        }
Beispiel #3
0
        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);
            }
        }