using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AUCMA.STORE.Common { public class LogHelper { //GetLogger表示log4net配置文件中logger标签中name属性,此处要一致 不然无log输出 public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo"); public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror"); public static readonly log4net.ILog heartbeat = log4net.LogManager.GetLogger("heartbeat"); public static readonly log4net.ILog recordInfo = log4net.LogManager.GetLogger("recordInfo"); public static readonly log4net.ILog pilerlog = log4net.LogManager.GetLogger("pilerlog"); public static readonly log4net.ILog leftPilerlog = log4net.LogManager.GetLogger("leftPilerlog"); public static readonly log4net.ILog rightPilerlog = log4net.LogManager.GetLogger("rightPilerlog"); /// /// 记录Info日志 /// /// /// public static void Info(string msg) { if (loginfo.IsInfoEnabled) { loginfo.Info(msg); } } /// /// 出入库记录日志 /// /// public static void record(string msg) { if (loginfo.IsInfoEnabled) { recordInfo.Info(msg); } } /// /// 记录心跳日志 /// /// public static void HeartBeat(string msg) { if (heartbeat.IsInfoEnabled) { heartbeat.Info(msg); } } public static void Pilerlog(string msg) { if (pilerlog.IsInfoEnabled) { pilerlog.Info(msg); } } public static void LeftPilerlog(string msg) { if (leftPilerlog.IsInfoEnabled) { leftPilerlog.Info(msg); } } public static void RightPilerlog(string msg) { if (rightPilerlog.IsInfoEnabled) { rightPilerlog.Info(msg); } } /// /// 记录Error日志 /// /// /// public static void Error(string info, Exception ex = null) { if (!string.IsNullOrEmpty(info) && ex == null) { logerror.ErrorFormat("【附加信息】 : {0}
", new object[] { info }); } else if (!string.IsNullOrEmpty(info) && ex != null) { string errorMsg = BeautyErrorMsg(ex); logerror.ErrorFormat("【附加信息】 : {0}
{1}", new object[] { info, errorMsg }); } else if (string.IsNullOrEmpty(info) && ex != null) { string errorMsg = BeautyErrorMsg(ex); logerror.Error(errorMsg); } } /// /// 美化错误信息 /// /// 异常 /// 错误信息 private static string BeautyErrorMsg(Exception ex) { string errorMsg = string.Format("【异常类型】:{0}
【异常信息】:{1}
【堆栈调用】:{2}", new object[] { ex.GetType().Name, ex.Message, ex.StackTrace }); errorMsg = errorMsg.Replace("\r\n", "
"); errorMsg = errorMsg.Replace("位置", "位置"); return errorMsg; } } }