Implement ConditionalLog to Logger
This commit is contained in:
parent
322ad49b9a
commit
96b3383504
|
|
@ -1,4 +1,5 @@
|
|||
using System.Runtime.CompilerServices;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using AyCode.Core.Consts;
|
||||
using AyCode.Core.Enums;
|
||||
|
||||
|
|
@ -39,53 +40,75 @@ public abstract class AcLogWriterBase : IAcLogWriterBase
|
|||
|
||||
public void Detail(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Detail, text, memberName, categoryName ?? CategoryName);
|
||||
|
||||
//public void Detail<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Detail(text, typeof(TCallerClassType).Name, memberName);
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void DetailConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Detail(text, memberName, categoryName);
|
||||
|
||||
public void Debug(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Debug, text, memberName, categoryName ?? CategoryName);
|
||||
|
||||
//public void Debug<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Debug(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void DebugConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Debug(text, memberName, categoryName);
|
||||
|
||||
public void Info(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Info, text, memberName, categoryName ?? CategoryName);
|
||||
|
||||
//public void Info<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Info(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void InfoConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Info(text, memberName, categoryName);
|
||||
|
||||
public void Warning(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Warning, text, memberName, categoryName ?? CategoryName);
|
||||
|
||||
//public void Warning<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Warning(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void WarningConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Warning(text, memberName, categoryName);
|
||||
|
||||
public void Suggest(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Suggest, text, memberName, categoryName ?? CategoryName);
|
||||
|
||||
//public void Suggest<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Suggest(text, typeof(TCallerClassType).Name, memberName);
|
||||
|
||||
//public void Error<TCallerClassType>(string? text, Exception? ex = null, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Error(text, ex, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void SuggestConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Suggest(text, memberName, categoryName);
|
||||
|
||||
public void Error(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Write(AppType, LogLevel.Error, text, memberName, categoryName ?? CategoryName, ex);
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void ErrorConditional(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Error(text, ex, categoryName, memberName);
|
||||
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, null, null);
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, null, null);
|
||||
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, ex?.GetType().Name, ex?.ToString());
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, ex);
|
||||
|
||||
public virtual void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, errorType, exMessage);
|
||||
|
||||
|
||||
public virtual void Write(IAcLogItemClient logItem)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(IAcLogItemClient logItem) => Write(logItem);
|
||||
}
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
using System.Runtime.CompilerServices;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Security.AccessControl;
|
||||
using AyCode.Core.Consts;
|
||||
using AyCode.Core.Enums;
|
||||
|
|
@ -16,7 +17,8 @@ public abstract class AcLoggerBase : IAcLoggerBase
|
|||
public string? CategoryName { get; set; }
|
||||
|
||||
protected AcLoggerBase() : this(null)
|
||||
{ }
|
||||
{
|
||||
}
|
||||
|
||||
protected AcLoggerBase(string? categoryName)
|
||||
{
|
||||
|
|
@ -34,9 +36,10 @@ public abstract class AcLoggerBase : IAcLoggerBase
|
|||
}
|
||||
}
|
||||
|
||||
protected AcLoggerBase(string? categoryName, params IAcLogWriterBase[] logWriters) :
|
||||
protected AcLoggerBase(string? categoryName, params IAcLogWriterBase[] logWriters) :
|
||||
this(AcEnv.AppConfiguration.GetEnum<AppType>("AyCode:Logger:AppType"), AcEnv.AppConfiguration.GetEnum<LogLevel>("AyCode:Logger:LogLevel"), categoryName, logWriters)
|
||||
{ }
|
||||
{
|
||||
}
|
||||
|
||||
protected AcLoggerBase(AppType appType, LogLevel logLevel, string? categoryName, params IAcLogWriterBase[] logWriters)
|
||||
{
|
||||
|
|
@ -57,62 +60,84 @@ public abstract class AcLoggerBase : IAcLoggerBase
|
|||
if (LogLevel <= LogLevel.Detail) LogWriters.ForEach(x => x.Detail(text, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
//public virtual void Detail<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Detail(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void DetailConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Detail(text, memberName, categoryName);
|
||||
|
||||
public virtual void Debug(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
{
|
||||
if (LogLevel <= LogLevel.Debug) LogWriters.ForEach(x => x.Debug(text, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
//public virtual void Debug<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Debug(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void DebugConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Debug(text, memberName, categoryName);
|
||||
|
||||
public virtual void Info(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
{
|
||||
if (LogLevel <= LogLevel.Info) LogWriters.ForEach(x => x.Info(text, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
//public virtual void Info<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Info(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void InfoConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Info(text, memberName, categoryName);
|
||||
|
||||
public virtual void Warning(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
{
|
||||
if (LogLevel <= LogLevel.Warning) LogWriters.ForEach(x => x.Warning(text, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
//public virtual void Warning<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Warning(text, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void WarningConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Warning(text, memberName, categoryName);
|
||||
|
||||
public virtual void Suggest(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
{
|
||||
if (LogLevel <= LogLevel.Suggest) LogWriters.ForEach(x => x.Suggest(text, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
//public virtual void Suggest<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Suggest(text, typeof(TCallerClassType).Name, memberName);
|
||||
|
||||
//public virtual void Error<TCallerClassType>(string? text, Exception? ex = null, [CallerMemberName] string? memberName = null) where TCallerClassType : class
|
||||
// => Error(text, ex, typeof(TCallerClassType).Name, memberName);
|
||||
[Conditional("DEBUG")]
|
||||
public void SuggestConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Suggest(text, memberName, categoryName);
|
||||
|
||||
public virtual void Error(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
{
|
||||
if (LogLevel <= LogLevel.Error) LogWriters.ForEach(x => x.Error(text, ex, categoryName ?? CategoryName, memberName));
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void ErrorConditional(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null)
|
||||
=> Error(text, ex, categoryName, memberName);
|
||||
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, null, null);
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, null, null);
|
||||
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, ex?.GetType().Name, ex?.ToString());
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, ex);
|
||||
|
||||
public virtual void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage)
|
||||
{
|
||||
if (LogLevel <= logLevel) LogWriters.ForEach(x => x.Write(appType, logLevel, logText, callerMemberName, categoryName ?? CategoryName, errorType, exMessage));
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage)
|
||||
=> Write(appType, logLevel, logText, callerMemberName, categoryName, errorType, exMessage);
|
||||
|
||||
|
||||
public void Write(IAcLogItemClient logItem)
|
||||
{
|
||||
if (LogLevel <= logItem.LogLevel) LogWriters.ForEach(x => x.Write(logItem));
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
public void WriteConditional(IAcLogItemClient logItem) => Write(logItem);
|
||||
}
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
using AyCode.Core.Enums;
|
||||
using System.Diagnostics;
|
||||
using AyCode.Core.Enums;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
namespace AyCode.Core.Loggers;
|
||||
|
|
@ -8,26 +9,30 @@ public interface IAcLogWriterBase
|
|||
public string? CategoryName { get; }
|
||||
|
||||
public void Detail(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Detail<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void DetailConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Debug(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Debug<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void DebugConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Info(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Info<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void InfoConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Warning(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Warning<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void WarningConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Suggest(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Suggest<TCallerClassType>(string? text, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void SuggestConditional(string? text, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Error(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
//public void Error<TCallerClassType>(string? text, Exception? ex = null, [CallerMemberName] string? memberName = null) where TCallerClassType : class;
|
||||
//public void ErrorConditional(string? text, Exception? ex = null, string? categoryName = null, [CallerMemberName] string? memberName = null);
|
||||
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName);
|
||||
//public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName);
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex);
|
||||
//public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, Exception? ex);
|
||||
public void Write(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage);
|
||||
//public void WriteConditional(AppType appType, LogLevel logLevel, string? logText, string? callerMemberName, string? categoryName, string? errorType, string? exMessage);
|
||||
|
||||
public void Write(IAcLogItemClient logItem);
|
||||
//public void WriteConditional(IAcLogItemClient logItem);
|
||||
}
|
||||
Loading…
Reference in New Issue