/// <summary>
 /// LogTrace
 /// </summary>
 /// <param name="logger"></param>
 /// <param name="eventId"></param>
 /// <param name="message"></param>
 /// <param name="args"></param>
 public static void LogTrace(this ILiteXLogger logger, int eventId, string message, params object[] args)
 {
     if (logger == null)
     {
         throw new ArgumentNullException("logger");
     }
     logger.Log(LiteXLogLevel.Trace, eventId, new FormatMessage(message, args), null);
 }
 /// <summary>
 /// LogCritical
 /// </summary>
 /// <param name="logger"></param>
 /// <param name="exception"></param>
 /// <param name="message"></param>
 /// <param name="args"></param>
 public static void LogCritical(this ILiteXLogger logger, Exception exception, string message, params object[] args)
 {
     if (logger == null)
     {
         throw new ArgumentNullException("logger");
     }
     logger.Log(LiteXLogLevel.Critical, 0, new FormatMessage(message, args), exception);
 }
 /// <summary>
 /// LogWarn
 /// </summary>
 /// <param name="logger"></param>
 /// <param name="message"></param>
 /// <param name="args"></param>
 public static void LogWarn(this ILiteXLogger logger, string message, params object[] args)
 {
     if (logger == null)
     {
         throw new ArgumentNullException("logger");
     }
     logger.Log(LiteXLogLevel.Warning, 0, new FormatMessage(message, args), null);
 }