internal void Error(Exception e, ErrorFrom from) { if (from != ErrorFrom.SSH) { _event(EventType.Error, e); } }
public void WriteLog() { StreamWriter LogFileStream = null; string deviceOs = ""; try { ErrorDate = DateTime.Now.ToFileTime().ToString(); ErrorFrom = HttpContext.Current.Request.UserAgent.ToString().ToLower(); if (ErrorFrom.Contains("darwin")) { deviceOs = "iOS."; } else if (ErrorFrom.Contains("android")) { deviceOs = "Android."; } else { deviceOs = ""; } RootFilePath = HttpContext.Current.Server.MapPath("~") + "\\resources\\ErrorLogs\\"; string fileName = RootFilePath + deviceOs + "Error.log." + DateTime.Now.ToString("dd-MM-yyyy") + ".txt"; LogFileStream = default(StreamWriter); if ((File.Exists(fileName))) { LogFileStream = File.AppendText(fileName); } else { LogFileStream = File.CreateText(fileName); } LogFileStream.Write("\n User Agent : "); LogFileStream.Write(ErrorFrom); LogFileStream.Write("\n Request Parameter : "); LogFileStream.Write(ApiRequestWithParam); if (TraceError != null) { LogFileStream.Write("\n Errors : "); LogFileStream.Write("\n Requested Url : "); LogFileStream.WriteLine(HttpContext.Current.Request.Url.ToString()); LogFileStream.Write("\n Message : "); LogFileStream.WriteLine(TraceError.Message); LogFileStream.Write(" StackTrace : "); LogFileStream.WriteLine(TraceError.StackTrace); LogFileStream.Write(" TargetSite : "); LogFileStream.WriteLine(TraceError.TargetSite); } LogFileStream.Flush(); LogFileStream.Close(); } catch (Exception ex) { //throw ex; } finally { if (LogFileStream != null) { LogFileStream.Dispose(); } } }
/// <summary> /// 获取所有故障设置 /// </summary> /// <param name="conn"></param> /// <returns></returns> public static List <ErrorEnum> GetAllErrorSet(All.Class.DataReadAndWrite conn) { List <ErrorEnum> result = new List <ErrorEnum>(); string errorEnum = ""; string errorValue = ""; string errorFrom = ""; int errorEnumIndex = 0; int errorsIndex = 0; int errorFromIndex = 0; ErrorEnum tmpErrorEnum; Errors tmpErrors; ErrorFrom tmpErrorFrom; using (DataTable dt = conn.Read("select ErrorEnum,ErrorValue,ErrorFrom from V_AllError")) { if (dt != null && dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { errorEnum = All.Class.Num.ToString(dt.Rows[i]["ErrorEnum"], ""); errorValue = All.Class.Num.ToString(dt.Rows[i]["ErrorValue"], ""); errorFrom = All.Class.Num.ToString(dt.Rows[i]["ErrorFrom"], ""); //查找是否有当前故障分类 errorEnumIndex = result.FindIndex( tmp => { return(tmp.Value == errorEnum); }); if (errorEnumIndex < 0)//添加一个故障分类 { tmpErrorEnum = new ErrorEnum(); tmpErrorEnum.Value = errorEnum; result.Add(tmpErrorEnum); errorEnumIndex = result.Count - 1; } //查找是否有当前故障 errorsIndex = result[errorEnumIndex].Errors.FindIndex( tmp => { return(tmp.Value == errorValue); }); if (errorsIndex < 0)//添加一个故障分类 { tmpErrors = new Errors(); tmpErrors.Value = errorValue; result[errorEnumIndex].Errors.Add(tmpErrors); errorsIndex = result[errorEnumIndex].Errors.Count - 1; } //查找是否有当前故障源 errorFromIndex = result[errorEnumIndex].Errors[errorsIndex].ErrorFrom.FindIndex( tmp => { return(tmp.Value == errorFrom); }); if (errorFromIndex < 0)//添加一个故障源 { tmpErrorFrom = new ErrorFrom(); tmpErrorFrom.Value = errorFrom; result[errorEnumIndex].Errors[errorsIndex].ErrorFrom.Add(tmpErrorFrom); } } } } return(result); }
public void Log(ErrorFrom from, IEnumerable <string> problems, Uri uri) { }