feat: trace log level added

This commit is contained in:
Syntriax 2025-07-12 18:31:35 +03:00
parent 7db56e7f3e
commit 83b155fc5e
3 changed files with 11 additions and 3 deletions

View File

@ -8,6 +8,7 @@ public interface ILogger
enum Level
{
Trace,
Info,
Warning,
Error,

View File

@ -4,7 +4,7 @@ namespace Syntriax.Engine.Core.Debug;
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)
{

View File

@ -16,7 +16,7 @@ public static class LoggerExtensions
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, $"{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)
@ -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, $"Message: {exception.Message}", 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);
}
}