Files
Fishing2Server/Tools/ConfigBuilder/NBConfigBuilder/Log.cs
2025-09-27 17:53:39 +08:00

97 lines
2.7 KiB
C#

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