using NLog;
namespace DigitalManufacturing.Core
{
///
/// Nlog日志帮助类
///
public class NLogHelper
{
#region 初始化
readonly Logger _logger;
private NLogHelper(Logger logger)
{
this._logger = logger;
}
///
/// 自定义Logger,否则用默认的GetCurrentClassLogger
///
///
public NLogHelper(string name) : this(LogManager.GetLogger(name))
{
}
///
/// 默认 ${logger} (Default 文件夹下)
///
public static NLogHelper Default { get; private set; }
static NLogHelper()
{
Default = new NLogHelper(LogManager.GetCurrentClassLogger());
}
#endregion
///
/// 日志写入,默认info等级
///
/// 模块名称
/// 日志内容
/// 租户Id
public void WriteLog(string ModuleName, string Msg, string TenantId = "")
{
LogEventInfo logEventInfo = new LogEventInfo();
logEventInfo.Properties["ModuleName"] = ModuleName;
logEventInfo.Properties["Msg"] = Msg;
logEventInfo.Properties["TenantId"] = TenantId;
logEventInfo.Level = LogLevel.Info;
_logger.Log(logEventInfo);
}
///
/// 日志写入,自己传日志类别
///
/// 模块名称
/// 日志内容
/// 日志级别
/// 租户Id
public void WriteLog(string ModuleName, string Msg, LogLevel Level, string TenantId = "")
{
LogEventInfo logEventInfo = new LogEventInfo();
logEventInfo.Properties["ModuleName"] = ModuleName;
logEventInfo.Properties["Msg"] = Msg;
logEventInfo.Properties["TenantId"] = TenantId;
logEventInfo.Level = Level;
_logger.Log(logEventInfo);
}
}
}