public void Log(LogLevel logLevel, Exception exception, string format, params object[] args)
        {
            IWebHelper _webHelper = EngineContext.Current.Resolve <IWebHelper>();

            var log = new ExceptionLogInfo()
            {
                Source          = exception.Source,
                InnerException  = exception.InnerException == null ? string.Empty : exception.InnerException.Message,
                EventStackTrace = exception == null ? string.Empty : exception.StackTrace,
                EventType       = exception == null ? string.Empty : exception.GetType().FullName,
                EventDetail     = exception == null ? string.Empty : exception.Message,
                EventMessage    = args == null || args.Length == 0 ? format : string.Format(format, args),
                HostName        = _webHelper.GetCurrentHostName(),
                LogLevelName    = logLevel.ToString(),
                IpAddress       = _webHelper.GetCurrentIpAddress(),
                PageUrl         = _webHelper.GetThisPageUrl(),
                ReferrerUrl     = _webHelper.GetUrlReferrer(),
            };

            _logRepository.Insert(log);
        }