using NLog; using System; using System.Diagnostics; namespace NBConfigBuilder { public static class Log { private static readonly Logger logger = LogManager.GetCurrentClassLogger(); static Log() { } /// /// 记录信息级别的日志消息。 /// /// 日志消息。 public static void Info(string msg) { logger.Info(msg); } /// /// 记录错误级别的日志消息,并附带调用栈信息。 /// /// 日志消息。 public static void Error(string msg) { var st = new StackTrace(1, true); logger.Error($"{msg}\n{st}"); } /// /// 记录异常的错误级别的日志消息,并附带调用栈信息。 /// /// 异常对象。 public static void Error(Exception e) { if (e.Data.Contains("StackTrace")) { logger.Error($"{e.Data["StackTrace"]}\n{e}"); return; } var str = e.ToString(); logger.Error(str); } /// /// 记录信息级别的格式化日志消息。 /// /// 日志消息模板。 /// 格式化参数。 public static void Info(string message, params object[] args) { logger.Info(message, args); } /// /// 记录调试级别的日志消息。 /// /// 日志消息。 public static void Debug(string msg) { logger.Debug(msg); } /// /// 记录警告级别的日志消息。 /// /// 日志消息。 public static void Warn(string msg) { logger.Warn(msg); } /// /// 记录严重错误级别的日志消息。 /// /// 日志消息。 public static void Fatal(string msg) { logger.Fatal(msg); } /// /// 记录异常的错误级别的日志消息。 /// /// 异常对象。 /// 附加消息。 public static void Error(Exception e, string message) { logger.Error(e, message); } } }