static string GetLevelNameFromEnum(ELevel levelEnum) { if (Dicts.levelDict == null) { Dicts.InitLevelDict(); } foreach (KeyValuePair <string, string> kvp in Dicts.levelDict) { if (levelEnum.ToString().Equals(kvp.Value)) { return(kvp.Key); } } return(""); }
/// <summary> /// 最终写日记操作 /// </summary> /// <param name="Level">错误级别</param> /// <param name="path">日志存放路径</param> /// <param name="msg">说明解释</param> /// <param name="value">错误信息</param> private static void WriteEnd(ELevel Level, string path, string msg, string value) { try { string date = string.Format("{0}\\{1}.txt", path, GetLogFileName()); //创建日志文件 StreamWriter writer = new StreamWriter(date, true, System.Text.Encoding.GetEncoding("GB2312")); writer.WriteLine(""); writer.WriteLine("错误级别为:" + Level.ToString() + " 记录时间:" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")); writer.WriteLine("说明解释为:" + msg); writer.WriteLine("异常信息:" + value); writer.WriteLine("---------------------------------------------------------------------------------------------"); writer.Close(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// 执行写日志的操作 /// </summary> /// <param name="Level">错误级别</param> /// <param name="msg">要写入的消息</param> public static void WriterLine(ELevel Level, string msg, string value)//加入时期判断默认保留当天日志 { string path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName) + "\\Log\\errorLog"; string errorMes = null; //存放错误信息 try { int SaveDate = GetDeleteLogDay(); //默认保留30天 path = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName) + "\\Log\\" + Level.ToString() + "Log"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } if (SaveDate == 0) { SaveDate = 15; } //保留多少天原始日志 DeleteLog(path, SaveDate); } catch (Exception ex) { errorMes = ex.Message; //存放错误信息 } finally { if (errorMes == null) { WriteEnd(Level, path, msg, value); } else { WriteEnd(Level, path, "系统写日志时报错", errorMes); } } }