namespace BotPages.Core.Logging;
///
/// Вывод лога в консоль.
///
public sealed class ConsoleLogger : ILogger
{
///
public void Log(LogLevel level, string message, Exception? ex = null)
{
var prefix = level switch
{
LogLevel.Info => "[INFO] ",
LogLevel.Warn => "[WARN] ",
LogLevel.Critical => "[CRIT] ",
_ => "[LOG] "
};
string text = $"{DateTime.UtcNow:O} {prefix}{message}{(ex is null ? "" : $" :: {ex.Message}")}";
if (level == LogLevel.Critical)
{
Console.Error.WriteLine(text);
}
else
{
Console.WriteLine(text);
}
}
}