using log4net; using log4net.Config; using System.IO; namespace VideoConcat.Common.Tools { class LogUtils { private static readonly ILog loginfo = LogManager.GetLogger("loginfo"); /// /// 从缺省配置文件获取日志配置 /// public static void SetConfig() { XmlConfigurator.Configure(); } /// /// 从指定配置文件获取日志配置 /// /// 指定的配置文件 public static void SetConfig(FileInfo configFile) { XmlConfigurator.Configure(configFile); } /// /// 生成分类日志 /// /// 日志信息 /// 保存目录名,形如d:\log\aaa private static void WriteSortLog(string info, string dirName) { try { if (false == Directory.Exists(dirName)) { Directory.CreateDirectory(dirName); } string path = dirName + "\\" + DateTime.Now.ToString("yyyyMMdd") + ".log"; StreamWriter sw = new(path, true, System.Text.Encoding.Default); sw.WriteLine(DateTime.Now.ToString("HH:mm:ss: ") + info); sw.Close(); } catch (Exception ex) { string expMsg = "WriteSortLog异常:" + ex.Message + Environment.NewLine + ex.StackTrace; if (ex.InnerException != null) expMsg += Environment.NewLine + "InnerException:" + ex.InnerException.Message; Error(expMsg, ex); } } /// /// Info级 常规日志 /// /// 日志信息 public static void Info(string info) { if (loginfo.IsInfoEnabled) { loginfo.Info(info); } } /// /// Info 先生成常规日志,然后在指定目录另外创建一份日志 /// 主要用来需要对日志进行分类时使用 /// /// /// public static void Info(string info, string dirName) { if (loginfo.IsInfoEnabled) { //生成常规日志 loginfo.Info(info); //生成分类日志 WriteSortLog(info, dirName); } } /// /// Debug级 常规日志 /// /// 日志信息 public static void Debug(string info) { if (loginfo.IsDebugEnabled) { loginfo.Debug(info); } } /// /// Debug级 异常日志 /// /// 日志信息 /// 异常信息 public static void Debug(string info, Exception exp) { if (loginfo.IsDebugEnabled) { loginfo.Debug(info, exp); } } /// /// Error级 常规的日志 /// /// 日志信息 public static void Error(string info) { if (loginfo.IsErrorEnabled) { loginfo.Error(info); } } /// /// Error 异常日志 /// /// 日志信息 /// 异常信息 public static void Error(string info, Exception exp) { if (loginfo.IsErrorEnabled) { loginfo.Error(info, exp); } } /// /// Fatal级 常规日志 /// /// 日志信息 public static void Fatal(string info) { if (loginfo.IsFatalEnabled) { loginfo.Fatal(info); } } /// /// Fatal级 异常日志 /// /// 日志信息 /// 异常信息 public static void Fatal(string info, Exception exp) { if (loginfo.IsFatalEnabled) { loginfo.Fatal(info, exp); } } /// /// Warn级 常规日志 /// /// 日志信息 public static void Warn(string info) { if (loginfo.IsWarnEnabled) { loginfo.Warn(info); } } /// /// Warn级 异常日志 /// /// 日志 /// 异常信息 public static void Warn(string info, Exception exp) { if (loginfo.IsWarnEnabled) { loginfo.Warn(info, exp); } } } }