Source

main / Source / Excel / Excel.Common / Logger.cs

Full commit
Naethra D ba1cb57 

































using System;
using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;

namespace DataUp.Excel.Common
{
    public static class Logger
    {
        /// <summary>
        /// Constructs and logs the exception message.
        /// </summary>
        /// <param name="exception">The Exception object.</param>
        [SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes", Justification = "Consume any exception while logging.")]
        public static void LogException(Exception exception)
        {
            if (exception != null)
            {
                try
                {
                    string traceMessage = DateTime.Now + " : " + exception.Message;
                    if (exception.InnerException != null)
                    {
                        traceMessage += " : " + exception.InnerException.Message;
                    }
                    
                    Globals.AddinTraceSource.TraceEvent(TraceEventType.Error, exception.GetHashCode(), traceMessage);
                }
                catch (Exception)
                {
                    // Consume any exception while logging as it cannot be logged any more.
                }
            }
        }
    }
}