exercism/csharp/logs-logs-logs/LogsLogsLogs.cs

29 lines
655 B
C#

enum LogLevel
{
Unknown = 0,
Trace = 1,
Debug = 2,
Info = 4,
Warning = 5,
Error = 6,
Fatal = 42
}
static class LogLine
{
public static LogLevel ParseLogLevel(string logLine) =>
logLine[1..4] switch
{
"TRC" => LogLevel.Trace,
"DBG" => LogLevel.Debug,
"INF" => LogLevel.Info,
"WRN" => LogLevel.Warning,
"ERR" => LogLevel.Error,
"FTL" => LogLevel.Fatal,
_ => LogLevel.Unknown
};
public static string OutputForShortLog(LogLevel logLevel, string message) =>
$"{(int)logLevel}:{message}";
}