Переопределение Serilog в настройках приложений не работает?

#asp.net-core #serilog

Вопрос:

Я настроил свой asp.net веб-приложение (попробовано также на стороне сервера Blazor) для использования serilog. Минимальный уровень имеет значение Информация, за исключением пространств имен microsoft и system, для предупреждения (или ошибки).

Настройка в appsettings.json таким образом не работает (информация от Microsoft и системы все еще регистрируется). Я удалил appsettings.development.json, чтобы убедиться, что это не связано.

 "MinumumLevel": {
    "Default": "Information",
    "Override": {
        "Microsoft": "Warning",
        "System": "Warning"
    }
}
 

хотя, если я настрою в program.cs, это сработает

 Log.Logger = new LoggerConfiguration()
    .ReadFrom.Configuration(configuration)
    .MinimumLevel.Override("Microsoft", Serilog.Events.LogEventLevel.Warning)
    .MinimumLevel.Override("System", Serilog.Events.LogEventLevel.Warning)
    .CreateLogger();
 

Демонстрационный проект здесь
https://github.com/SandroRiz/RizSoft.SerilogSample

введите описание изображения здесь

Комментарии:

1. Вы неправильно написали MinimumLevel appsetings.json : У вас это как MinumumLevel .