public void AddLog(Exception objException, ExceptionLogType LogType) { var objLogController = new LogController(); var objLogInfo = new LogInfo(); objLogInfo.LogTypeKey = LogType.ToString(); if (LogType == ExceptionLogType.SEARCH_INDEXER_EXCEPTION) { //Add SearchException Properties var objSearchException = (SearchException)objException; objLogInfo.LogProperties.Add(new LogDetailInfo("ModuleId", objSearchException.SearchItem.ModuleId.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("SearchItemId", objSearchException.SearchItem.SearchItemId.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("Title", objSearchException.SearchItem.Title)); objLogInfo.LogProperties.Add(new LogDetailInfo("SearchKey", objSearchException.SearchItem.SearchKey)); objLogInfo.LogProperties.Add(new LogDetailInfo("GUID", objSearchException.SearchItem.GUID)); } else if (LogType == ExceptionLogType.MODULE_LOAD_EXCEPTION) { //Add ModuleLoadException Properties var objModuleLoadException = (ModuleLoadException)objException; objLogInfo.LogProperties.Add(new LogDetailInfo("ModuleId", objModuleLoadException.ModuleId.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("ModuleDefId", objModuleLoadException.ModuleDefId.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("FriendlyName", objModuleLoadException.FriendlyName)); objLogInfo.LogProperties.Add(new LogDetailInfo("ModuleControlSource", objModuleLoadException.ModuleControlSource)); } else if (LogType == ExceptionLogType.SECURITY_EXCEPTION) { //Add SecurityException Properties var objSecurityException = (SecurityException)objException; objLogInfo.LogProperties.Add(new LogDetailInfo("Querystring", objSecurityException.Querystring)); objLogInfo.LogProperties.Add(new LogDetailInfo("IP", objSecurityException.IP)); } //Add BasePortalException Properties var objBasePortalException = new BasePortalException(objException.ToString(), objException); objLogInfo.LogProperties.Add(new LogDetailInfo("AssemblyVersion", objBasePortalException.AssemblyVersion)); objLogInfo.LogProperties.Add(new LogDetailInfo("PortalID", objBasePortalException.PortalID.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("PortalName", objBasePortalException.PortalName)); objLogInfo.LogProperties.Add(new LogDetailInfo("UserID", objBasePortalException.UserID.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("UserName", objBasePortalException.UserName)); objLogInfo.LogProperties.Add(new LogDetailInfo("ActiveTabID", objBasePortalException.ActiveTabID.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("ActiveTabName", objBasePortalException.ActiveTabName)); objLogInfo.LogProperties.Add(new LogDetailInfo("RawURL", objBasePortalException.RawURL)); objLogInfo.LogProperties.Add(new LogDetailInfo("AbsoluteURL", objBasePortalException.AbsoluteURL)); objLogInfo.LogProperties.Add(new LogDetailInfo("AbsoluteURLReferrer", objBasePortalException.AbsoluteURLReferrer)); objLogInfo.LogProperties.Add(new LogDetailInfo("UserAgent", objBasePortalException.UserAgent)); objLogInfo.LogProperties.Add(new LogDetailInfo("DefaultDataProvider", objBasePortalException.DefaultDataProvider)); objLogInfo.LogProperties.Add(new LogDetailInfo("ExceptionGUID", objBasePortalException.ExceptionGUID)); objLogInfo.LogProperties.Add(new LogDetailInfo("InnerException", objBasePortalException.InnerException.Message)); objLogInfo.LogProperties.Add(new LogDetailInfo("FileName", objBasePortalException.FileName)); objLogInfo.LogProperties.Add(new LogDetailInfo("FileLineNumber", objBasePortalException.FileLineNumber.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("FileColumnNumber", objBasePortalException.FileColumnNumber.ToString())); objLogInfo.LogProperties.Add(new LogDetailInfo("Method", objBasePortalException.Method)); objLogInfo.LogProperties.Add(new LogDetailInfo("StackTrace", objBasePortalException.StackTrace)); objLogInfo.LogProperties.Add(new LogDetailInfo("Message", objBasePortalException.Message)); objLogInfo.LogProperties.Add(new LogDetailInfo("Source", objBasePortalException.Source)); objLogInfo.LogPortalID = objBasePortalException.PortalID; objLogController.AddLog(objLogInfo); }
public void AddLog(BasePortalException objBasePortalException) { if (objBasePortalException.GetType().Name == "ModuleLoadException") { AddLog(objBasePortalException, ExceptionLogType.MODULE_LOAD_EXCEPTION); } else if (objBasePortalException.GetType().Name == "PageLoadException") { AddLog(objBasePortalException, ExceptionLogType.PAGE_LOAD_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SchedulerException") { AddLog(objBasePortalException, ExceptionLogType.SCHEDULER_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SecurityException") { AddLog(objBasePortalException, ExceptionLogType.SECURITY_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SearchException") { AddLog(objBasePortalException, ExceptionLogType.SEARCH_INDEXER_EXCEPTION); } else { AddLog(objBasePortalException, ExceptionLogType.GENERAL_EXCEPTION); } }
protected override void OnError(System.EventArgs e) { base.OnError(e); Exception exc = Server.GetLastError(); string strURL = Globals.ApplicationURL(); if (object.ReferenceEquals(exc.GetType(), typeof(HttpException))) { HttpContext.Current.Response.Clear(); HttpContext.Current.Server.Transfer("~/ErrorPage.aspx"); } BasePortalException objBasePortalException = new BasePortalException(exc.ToString(), exc); if (Request.QueryString["error"] != null) { strURL += (strURL.IndexOf("?") == -1 ? "?" : "&").ToString() + "error=terminate"; } else { strURL += (strURL.IndexOf("?") == -1 ? "?" : "&").ToString() + "error=" + Server.UrlEncode(exc.Message); if (!Globals.IsAdminControl()) { strURL += "&content=0"; } } Exceptions.ProcessPageLoadException(exc, strURL); }
public void AddLog(Exception objException, LogInfo log, ExceptionLogType logType) { log.LogTypeKey = logType.ToString(); if (logType == ExceptionLogType.MODULE_LOAD_EXCEPTION) { //Add ModuleLoadException Properties var objModuleLoadException = (ModuleLoadException)objException; log.LogProperties.Add(new LogDetailInfo("ModuleId", objModuleLoadException.ModuleId.ToString())); log.LogProperties.Add(new LogDetailInfo("ModuleDefId", objModuleLoadException.ModuleDefId.ToString())); log.LogProperties.Add(new LogDetailInfo("FriendlyName", objModuleLoadException.FriendlyName)); log.LogProperties.Add(new LogDetailInfo("ModuleControlSource", objModuleLoadException.ModuleControlSource)); } else if (logType == ExceptionLogType.SECURITY_EXCEPTION) { //Add SecurityException Properties var objSecurityException = (SecurityException)objException; log.LogProperties.Add(new LogDetailInfo("Querystring", objSecurityException.Querystring)); log.LogProperties.Add(new LogDetailInfo("IP", objSecurityException.IP)); } //Add BasePortalException Properties var objBasePortalException = new BasePortalException(objException.ToString(), objException); log.LogProperties.Add(new LogDetailInfo("AbsoluteURL", objBasePortalException.AbsoluteURL)); log.LogProperties.Add(new LogDetailInfo("DefaultDataProvider", objBasePortalException.DefaultDataProvider)); log.LogProperties.Add(new LogDetailInfo("ExceptionGUID", objBasePortalException.ExceptionGUID)); log.LogPortalID = objBasePortalException.PortalID; var sqlException = objException as SqlException; if (sqlException != null && (uint)sqlException.ErrorCode == 0x80131904 && sqlException.Number == 4060) { // This is to avoid stack-overflow exception when a database connection exception occurs // bercause the logger will try to write to the database and goes in a loop of failures. Trace.TraceError(log.Serialize()); } else { Instance.AddLog(log); } //when current user is host user and exception is PageLoadException, try to log the log guid into cookies. //so that this log can be picked and do more action on it later. if (logType == ExceptionLogType.PAGE_LOAD_EXCEPTION && HttpContext.Current != null && UserController.Instance.GetCurrentUserInfo().IsSuperUser) { HttpContext.Current.Response.Cookies.Add( new HttpCookie("LogGUID", log.LogGUID) { HttpOnly = false, Path = (!string.IsNullOrEmpty(Globals.ApplicationPath) ? Globals.ApplicationPath : "/") }); } }
public void AddLog(Exception objException, LogInfo log, ExceptionLogType logType) { log.LogTypeKey = logType.ToString(); if (logType == ExceptionLogType.SEARCH_INDEXER_EXCEPTION) { //Add SearchException Properties var objSearchException = (SearchException)objException; log.LogProperties.Add(new LogDetailInfo("ModuleId", objSearchException.SearchItem.ModuleId.ToString())); log.LogProperties.Add(new LogDetailInfo("SearchItemId", objSearchException.SearchItem.SearchItemId.ToString())); log.LogProperties.Add(new LogDetailInfo("Title", objSearchException.SearchItem.Title)); log.LogProperties.Add(new LogDetailInfo("SearchKey", objSearchException.SearchItem.SearchKey)); log.LogProperties.Add(new LogDetailInfo("GUID", objSearchException.SearchItem.GUID)); } else if (logType == ExceptionLogType.MODULE_LOAD_EXCEPTION) { //Add ModuleLoadException Properties var objModuleLoadException = (ModuleLoadException)objException; log.LogProperties.Add(new LogDetailInfo("ModuleId", objModuleLoadException.ModuleId.ToString())); log.LogProperties.Add(new LogDetailInfo("ModuleDefId", objModuleLoadException.ModuleDefId.ToString())); log.LogProperties.Add(new LogDetailInfo("FriendlyName", objModuleLoadException.FriendlyName)); log.LogProperties.Add(new LogDetailInfo("ModuleControlSource", objModuleLoadException.ModuleControlSource)); } else if (logType == ExceptionLogType.SECURITY_EXCEPTION) { //Add SecurityException Properties var objSecurityException = (SecurityException)objException; log.LogProperties.Add(new LogDetailInfo("Querystring", objSecurityException.Querystring)); log.LogProperties.Add(new LogDetailInfo("IP", objSecurityException.IP)); } //Add BasePortalException Properties var objBasePortalException = new BasePortalException(objException.ToString(), objException); log.LogProperties.Add(new LogDetailInfo("AbsoluteURL", objBasePortalException.AbsoluteURL)); log.LogProperties.Add(new LogDetailInfo("DefaultDataProvider", objBasePortalException.DefaultDataProvider)); log.LogProperties.Add(new LogDetailInfo("ExceptionGUID", objBasePortalException.ExceptionGUID)); log.LogPortalID = objBasePortalException.PortalID; LogController.Instance.AddLog(log); //when current user is host user and exception is PageLoadException, try to log the log guid into cookies. //so that this log can be picked and do more action on it later. if (logType == ExceptionLogType.PAGE_LOAD_EXCEPTION && HttpContext.Current != null && UserController.Instance.GetCurrentUserInfo().IsSuperUser) { HttpContext.Current.Response.Cookies.Add( new HttpCookie("LogGUID", log.LogGUID) { HttpOnly = false, Path = (!string.IsNullOrEmpty(Globals.ApplicationPath) ? Globals.ApplicationPath : "/") }); } }
public void AddLog(BasePortalException objBasePortalException) { var log = new LogInfo { Exception = Exceptions.GetExceptionInfo(objBasePortalException), }; log.Exception.AssemblyVersion = objBasePortalException.AssemblyVersion; log.Exception.PortalId = objBasePortalException.PortalID; log.Exception.UserId = objBasePortalException.UserID; log.Exception.TabId = objBasePortalException.ActiveTabID; log.Exception.RawUrl = objBasePortalException.RawURL; log.Exception.Referrer = objBasePortalException.AbsoluteURLReferrer; log.Exception.UserAgent = objBasePortalException.UserAgent; if (objBasePortalException.GetType().Name == "ModuleLoadException") { this.AddLog(objBasePortalException, log, ExceptionLogType.MODULE_LOAD_EXCEPTION); } else if (objBasePortalException.GetType().Name == "PageLoadException") { this.AddLog(objBasePortalException, log, ExceptionLogType.PAGE_LOAD_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SchedulerException") { this.AddLog(objBasePortalException, log, ExceptionLogType.SCHEDULER_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SecurityException") { this.AddLog(objBasePortalException, log, ExceptionLogType.SECURITY_EXCEPTION); } else if (objBasePortalException.GetType().Name == "SearchException") { this.AddLog(objBasePortalException, log, ExceptionLogType.SEARCH_INDEXER_EXCEPTION); } else { this.AddLog(objBasePortalException, log, ExceptionLogType.GENERAL_EXCEPTION); } }
public void LogException(Exception ex, EventLogSeverity severity) { var logInfo = new LogInfo(); var user = DnnUserController.Instance.GetCurrentUserInfo(); logInfo.LogUserID = user != null ? user.UserID : -1; logInfo.LogPortalID = DnnGlobal.Instance.GetPortalId(); logInfo.LogTypeKey = LOGTYPE_EXCEPTION; logInfo.AddProperty("Severity", severity.ToString()); var exception4 = new BasePortalException(ex.ToString(), ex); logInfo.LogProperties.Add(new LogDetailInfo("AssemblyVersion", exception4.AssemblyVersion)); logInfo.LogProperties.Add(new LogDetailInfo("PortalID", exception4.PortalID.ToString())); logInfo.LogProperties.Add(new LogDetailInfo("PortalName", exception4.PortalName)); logInfo.LogProperties.Add(new LogDetailInfo("UserID", exception4.UserID.ToString())); logInfo.LogProperties.Add(new LogDetailInfo("UserName", exception4.UserName)); logInfo.LogProperties.Add(new LogDetailInfo("ActiveTabID", exception4.ActiveTabID.ToString())); logInfo.LogProperties.Add(new LogDetailInfo("ActiveTabName", exception4.ActiveTabName)); logInfo.LogProperties.Add(new LogDetailInfo("RawURL", exception4.RawURL)); logInfo.LogProperties.Add(new LogDetailInfo("AbsoluteURL", exception4.AbsoluteURL)); logInfo.LogProperties.Add(new LogDetailInfo("AbsoluteURLReferrer", exception4.AbsoluteURLReferrer)); logInfo.LogProperties.Add(new LogDetailInfo("UserAgent", exception4.UserAgent)); logInfo.LogProperties.Add(new LogDetailInfo("DefaultDataProvider", exception4.DefaultDataProvider)); logInfo.LogProperties.Add(new LogDetailInfo("ExceptionGUID", exception4.ExceptionGUID)); logInfo.LogProperties.Add(new LogDetailInfo("InnerException", exception4.InnerException.Message)); logInfo.LogProperties.Add(new LogDetailInfo("FileName", exception4.FileName)); logInfo.LogProperties.Add(new LogDetailInfo("FileLineNumber", exception4.FileLineNumber.ToString())); logInfo.LogProperties.Add(new LogDetailInfo("FileColumnNumber", exception4.FileColumnNumber.ToString())); logInfo.LogProperties.Add(new LogDetailInfo("Method", exception4.Method)); logInfo.LogProperties.Add(new LogDetailInfo("StackTrace", exception4.StackTrace)); logInfo.LogProperties.Add(new LogDetailInfo("Message", exception4.Message)); logInfo.LogProperties.Add(new LogDetailInfo("Source", exception4.Source)); var log = new EventLogController(); log.AddLog(logInfo); }
public void AddLog(Exception objException, ExceptionLogType logType) { var log = new LogInfo { LogTypeKey = logType.ToString() }; if (logType == ExceptionLogType.SEARCH_INDEXER_EXCEPTION) { //Add SearchException Properties var objSearchException = (SearchException)objException; log.LogProperties.Add(new LogDetailInfo("ModuleId", objSearchException.SearchItem.ModuleId.ToString())); log.LogProperties.Add(new LogDetailInfo("SearchItemId", objSearchException.SearchItem.SearchItemId.ToString())); log.LogProperties.Add(new LogDetailInfo("Title", objSearchException.SearchItem.Title)); log.LogProperties.Add(new LogDetailInfo("SearchKey", objSearchException.SearchItem.SearchKey)); log.LogProperties.Add(new LogDetailInfo("GUID", objSearchException.SearchItem.GUID)); } else if (logType == ExceptionLogType.MODULE_LOAD_EXCEPTION) { //Add ModuleLoadException Properties var objModuleLoadException = (ModuleLoadException)objException; log.LogProperties.Add(new LogDetailInfo("ModuleId", objModuleLoadException.ModuleId.ToString())); log.LogProperties.Add(new LogDetailInfo("ModuleDefId", objModuleLoadException.ModuleDefId.ToString())); log.LogProperties.Add(new LogDetailInfo("FriendlyName", objModuleLoadException.FriendlyName)); log.LogProperties.Add(new LogDetailInfo("ModuleControlSource", objModuleLoadException.ModuleControlSource)); } else if (logType == ExceptionLogType.SECURITY_EXCEPTION) { //Add SecurityException Properties var objSecurityException = (SecurityException)objException; log.LogProperties.Add(new LogDetailInfo("Querystring", objSecurityException.Querystring)); log.LogProperties.Add(new LogDetailInfo("IP", objSecurityException.IP)); } //Add BasePortalException Properties var objBasePortalException = new BasePortalException(objException.ToString(), objException); log.LogProperties.Add(new LogDetailInfo("AssemblyVersion", objBasePortalException.AssemblyVersion)); log.LogProperties.Add(new LogDetailInfo("PortalID", objBasePortalException.PortalID.ToString())); log.LogProperties.Add(new LogDetailInfo("PortalName", objBasePortalException.PortalName)); log.LogProperties.Add(new LogDetailInfo("UserID", objBasePortalException.UserID.ToString())); log.LogProperties.Add(new LogDetailInfo("UserName", objBasePortalException.UserName)); log.LogProperties.Add(new LogDetailInfo("ActiveTabID", objBasePortalException.ActiveTabID.ToString())); log.LogProperties.Add(new LogDetailInfo("ActiveTabName", objBasePortalException.ActiveTabName)); log.LogProperties.Add(new LogDetailInfo("RawURL", objBasePortalException.RawURL)); log.LogProperties.Add(new LogDetailInfo("AbsoluteURL", objBasePortalException.AbsoluteURL)); log.LogProperties.Add(new LogDetailInfo("AbsoluteURLReferrer", objBasePortalException.AbsoluteURLReferrer)); log.LogProperties.Add(new LogDetailInfo("UserAgent", objBasePortalException.UserAgent)); log.LogProperties.Add(new LogDetailInfo("DefaultDataProvider", objBasePortalException.DefaultDataProvider)); log.LogProperties.Add(new LogDetailInfo("ExceptionGUID", objBasePortalException.ExceptionGUID)); log.LogProperties.Add(new LogDetailInfo("InnerException", objBasePortalException.InnerException.Message)); log.LogProperties.Add(new LogDetailInfo("FileName", objBasePortalException.FileName)); log.LogProperties.Add(new LogDetailInfo("FileLineNumber", objBasePortalException.FileLineNumber.ToString())); log.LogProperties.Add(new LogDetailInfo("FileColumnNumber", objBasePortalException.FileColumnNumber.ToString())); log.LogProperties.Add(new LogDetailInfo("Method", objBasePortalException.Method)); log.LogProperties.Add(new LogDetailInfo("StackTrace", objBasePortalException.StackTrace)); log.LogProperties.Add(new LogDetailInfo("Message", objBasePortalException.Message)); log.LogProperties.Add(new LogDetailInfo("Source", objBasePortalException.Source)); log.LogPortalID = objBasePortalException.PortalID; LogController.Instance.AddLog(log); //when current user is host user and exception is PageLoadException, try to log the log guid into cookies. //so that this log can be picked and do more action on it later. if (logType == ExceptionLogType.PAGE_LOAD_EXCEPTION && HttpContext.Current != null && UserController.Instance.GetCurrentUserInfo().IsSuperUser) { HttpContext.Current.Response.Cookies.Add(new HttpCookie("LogGUID", log.LogGUID) { HttpOnly = false }); } }