mirror of
https://git.lewd.wtf/PGR/ascnet
synced 2025-12-13 03:14:34 +01:00
add support for loglevel color configuration
This commit is contained in:
17
AscNet.Logging/LogLevelColor.cs
Normal file
17
AscNet.Logging/LogLevelColor.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
namespace AscNet.Logging
|
||||
{
|
||||
public class LogLevelColor
|
||||
{
|
||||
|
||||
public ConsoleColor Debug { get; set; } = ConsoleColor.Magenta;
|
||||
|
||||
public ConsoleColor Info { get; set; } = ConsoleColor.Green;
|
||||
|
||||
public ConsoleColor Warning { get; set; } = ConsoleColor.Yellow;
|
||||
|
||||
public ConsoleColor Error { get; set; } = ConsoleColor.Red;
|
||||
|
||||
public ConsoleColor Fatal { get; set; } = ConsoleColor.DarkRed;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,15 @@
|
||||
|
||||
#region Instantiation
|
||||
|
||||
public Dictionary<LogLevel, ConsoleColor> LogLevelColor { get; set; } = new Dictionary<LogLevel, ConsoleColor>()
|
||||
{
|
||||
{ LogLevel.FATAL , ConsoleColor.DarkRed },
|
||||
{ LogLevel.ERROR , ConsoleColor.Red },
|
||||
{ LogLevel.WARN , ConsoleColor.Yellow },
|
||||
{ LogLevel.INFO , ConsoleColor.Green },
|
||||
{ LogLevel.DEBUG , ConsoleColor.Magenta }
|
||||
};
|
||||
|
||||
public Logger(string logFilePath)
|
||||
{
|
||||
_logFilePath = logFilePath;
|
||||
@@ -156,32 +165,7 @@
|
||||
{
|
||||
if (logLevel <= _logLevel)
|
||||
{
|
||||
switch (logLevel)
|
||||
{
|
||||
case LogLevel.DEBUG:
|
||||
Console.ForegroundColor = ConsoleColor.Magenta;
|
||||
break;
|
||||
|
||||
case LogLevel.INFO:
|
||||
Console.ForegroundColor = ConsoleColor.Green;
|
||||
break;
|
||||
|
||||
case LogLevel.WARN:
|
||||
Console.ForegroundColor = ConsoleColor.Yellow;
|
||||
break;
|
||||
|
||||
case LogLevel.ERROR:
|
||||
Console.ForegroundColor = ConsoleColor.Red;
|
||||
break;
|
||||
|
||||
case LogLevel.FATAL:
|
||||
Console.ForegroundColor = ConsoleColor.DarkRed;
|
||||
break;
|
||||
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException(nameof(logLevel), logLevel, null);
|
||||
}
|
||||
|
||||
Console.ForegroundColor = LogLevelColor[logLevel];
|
||||
Console.WriteLine($"[{DateTime.Now:HH:mm:ss.fff}][{logLevel}]{message}");
|
||||
Console.ResetColor();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user