feat: trace log level added
This commit is contained in:
		@@ -8,6 +8,7 @@ public interface ILogger
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    enum Level
 | 
					    enum Level
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					        Trace,
 | 
				
			||||||
        Info,
 | 
					        Info,
 | 
				
			||||||
        Warning,
 | 
					        Warning,
 | 
				
			||||||
        Error,
 | 
					        Error,
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -4,7 +4,7 @@ namespace Syntriax.Engine.Core.Debug;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
public abstract class LoggerBase : ILogger
 | 
					public abstract class LoggerBase : ILogger
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    public ILogger.Level FilterLevel { get; set; } = ILogger.Level.Info;
 | 
					    public ILogger.Level FilterLevel { get; set; } = ILogger.Level.Trace;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void Log(string message, ILogger.Level level = ILogger.Level.Info, bool force = false)
 | 
					    public void Log(string message, ILogger.Level level = ILogger.Level.Info, bool force = false)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -16,7 +16,7 @@ public static class LoggerExtensions
 | 
				
			|||||||
    public static void LogError<T>(this ILogger logger, T caller, string message, bool force = false)
 | 
					    public static void LogError<T>(this ILogger logger, T caller, string message, bool force = false)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        Log(logger, caller, message, ILogger.Level.Error, force);
 | 
					        Log(logger, caller, message, ILogger.Level.Error, force);
 | 
				
			||||||
        Log(logger, caller, $"{nameof(StackTrace)}:{Environment.NewLine}{new StackTrace()}");
 | 
					        LogTrace(logger, caller, new StackTrace(), force);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public static void LogException<T>(this ILogger logger, T caller, Exception exception, bool force = false)
 | 
					    public static void LogException<T>(this ILogger logger, T caller, Exception exception, bool force = false)
 | 
				
			||||||
@@ -24,6 +24,13 @@ public static class LoggerExtensions
 | 
				
			|||||||
        Log(logger, caller, $"Exception of type {exception.GetType().Name} occured", ILogger.Level.Error, force);
 | 
					        Log(logger, caller, $"Exception of type {exception.GetType().Name} occured", ILogger.Level.Error, force);
 | 
				
			||||||
        Log(logger, caller, $"Message: {exception.Message}", ILogger.Level.Error, force);
 | 
					        Log(logger, caller, $"Message: {exception.Message}", ILogger.Level.Error, force);
 | 
				
			||||||
        Log(logger, caller, $"InnerException: {exception.InnerException}", ILogger.Level.Error, force);
 | 
					        Log(logger, caller, $"InnerException: {exception.InnerException}", ILogger.Level.Error, force);
 | 
				
			||||||
        Log(logger, caller, $"{nameof(StackTrace)}:{Environment.NewLine}{exception.StackTrace}");
 | 
					
 | 
				
			||||||
 | 
					        // Not using LogTrace because exception.StackTrace is a type of string
 | 
				
			||||||
 | 
					        Log(logger, caller, $"{nameof(StackTrace)}:{Environment.NewLine}{exception.StackTrace}", ILogger.Level.Trace);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public static void LogTrace<T>(this ILogger logger, T caller, StackTrace stackTrace, bool force = false)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        Log(logger, caller, $"{nameof(StackTrace)}:{Environment.NewLine}{stackTrace ?? new()}", ILogger.Level.Trace, force);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user