/// <summary> /// 写入日志 /// </summary> /// <param name="level">日志等级</param> /// <param name="err">err</param> private void WriteToLog(LogLevel level, SmcErr err, Exception e, string message, params object[] args) { //暂时先这样处理,保证log2console能够看到异常信息 StringBuilder log = new StringBuilder(); if (null != e) { log.AppendFormat("{0},{1}", e.Message, e.StackTrace); log.AppendLine(); if (null != e.InnerException) { log.AppendFormat("InnerException {0},{1}", e.InnerException.Message, e.InnerException.StackTrace); log.AppendLine(); } } if (null == args || (null != args && args.Length == 0)) { log.Append(message); } else { log.AppendFormat(message, args); } LogEventInfo logEvent = new LogEventInfo(level, this.Log.Name, null, log.ToString(), null, null); if (null != err) { Param = err.GetXmlParamter(); Model = err.GetModelName(); ErrNo = err.ErrNo; } foreach (KeyValuePair <string, object> de in this.Properties) { logEvent.Properties[de.Key] = de.Value; } this.Log.Log(logEvent); //ClearProperties(); }