50 lines
1.7 KiB
C#
50 lines
1.7 KiB
C#
using AyCode.Core.Helpers;
|
|
using AyCode.Entities;
|
|
using AyCode.Entities.Server.LogItems;
|
|
using LogLevel = AyCode.Core.Loggers.LogLevel;
|
|
|
|
namespace Mango.Nop.Core.Loggers
|
|
{
|
|
public class NopLogWriter : AcLogItemWriterBase<AcLogItem>//AcTextLogWriterBase
|
|
{
|
|
private readonly global::Nop.Services.Logging.ILogger _nopLogger;
|
|
|
|
public NopLogWriter(global::Nop.Services.Logging.ILogger nopLogger) : this(nopLogger, null)
|
|
{ }
|
|
|
|
public NopLogWriter(global::Nop.Services.Logging.ILogger nopLogger, string? categoryName = null) : base(categoryName)
|
|
{
|
|
_nopLogger = nopLogger;
|
|
}
|
|
|
|
//public NopLogWriter(ILogger nopLogger, AppType appType, LogLevel logLevel, string? categoryName = null) : base(appType, logLevel, categoryName)
|
|
//{
|
|
// _nopLogger=nopLogger;
|
|
//}
|
|
|
|
protected override void WriteLogItemCallback(AcLogItem logItem)
|
|
{
|
|
switch (logItem.LogLevel)
|
|
{
|
|
case LogLevel.Detail:
|
|
case LogLevel.Trace:
|
|
case LogLevel.Debug:
|
|
case LogLevel.Info:
|
|
_nopLogger.Information(logItem.Text);//.Forget();
|
|
break;
|
|
case LogLevel.Suggest:
|
|
case LogLevel.Warning:
|
|
_nopLogger.Warning(logItem.Text);//.Forget();
|
|
break;
|
|
case LogLevel.Error:
|
|
_nopLogger.Error(logItem.Text);//.Forget();//, logItem.Exception);
|
|
break;
|
|
case LogLevel.Disabled:
|
|
break;
|
|
default:
|
|
throw new ArgumentOutOfRangeException();
|
|
}
|
|
}
|
|
}
|
|
}
|