/// <summary> /// "Microsoft"と"System"のログ出力レベルを設定する。 /// </summary> /// <param name="loggerMinimum"></param> /// <param name="source">設定対象 ("Microsoft"または"System"</param> /// <param name="minLevel">ログ出力レベル /// <para>nullまたは解釈できない不正な文字列が指定された場合、デフォルトで"Warning"レベルに設定します。 /// </param> /// <returns>LoggerConfiguration</returns> public static LoggerConfiguration OverrideWith(this LoggerMinimumLevelConfiguration loggerMinimum, string source, string minLevel) { LogEventLevel level; if (string.IsNullOrEmpty(minLevel) || !Enum.TryParse(minLevel, true, out level)) { level = LogEventLevel.Warning; } return(loggerMinimum.Override(source, level)); }
/// <summary> /// Sets minimum level for the logger. /// </summary> /// <param name="loggerMinimum"></param> /// <param name="minLevel">ログ出力レベル。 /// <para>nullまたは不正な文字列が指定された場合、デフォルトで"Information"レベルに設定されます。</param> /// <returns>LoggerConfiguration</returns> public static LoggerConfiguration DefaultTo(this LoggerMinimumLevelConfiguration loggerMinimum, string minLevel) { LogEventLevel level; if (!string.IsNullOrEmpty(minLevel) && Enum.TryParse(minLevel, true, out level)) { return(loggerMinimum.Is(level)); } else { return(loggerMinimum.Information()); } }
public static LoggerConfiguration FromString(this LoggerMinimumLevelConfiguration minimumLevel, string?logLevel) { return(logLevel?.ToLowerInvariant() switch { "fatal" => minimumLevel.Fatal(), "error" => minimumLevel.Error(), "warning" => minimumLevel.Warning(), "information" => minimumLevel.Information(), "debug" => minimumLevel.Debug(), "verbose" => minimumLevel.Verbose(), null => minimumLevel.Information(), _ => throw new ArgumentException("Unknown log level", nameof(logLevel)) });