21 lines
533 B
C#
21 lines
533 B
C#
using System;
|
|
|
|
namespace Syntriax.Engine.Core.Debug;
|
|
|
|
public abstract class LoggerBase : ILogger
|
|
{
|
|
public ILogger.Level FilterLevel { get; set; } = ILogger.Level.Info;
|
|
|
|
public void Log(string message, ILogger.Level level = ILogger.Level.Info, bool force = false)
|
|
{
|
|
if (!force && level < FilterLevel)
|
|
return;
|
|
|
|
string timestamp = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss tt");
|
|
|
|
Write($"[{timestamp}] [{level}] \t{message}");
|
|
}
|
|
|
|
protected abstract void Write(string message);
|
|
}
|