По умолчанию вы говорите, что любая запись в журнале с уровнем серьезности «Отладка» или выше должна быть отправлена в ваши приемники (консоль, файл и т. Д.).
Это поведение, подобное Документ Microsoft о ведении журнала :
Например, настройка ведения журнала обычно предоставляется в разделе Logging
файлов настроек приложения.В следующем примере показано содержимое типичного файла appsettings.Development.json:
{
"Logging": {
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
},
"Console": {
"IncludeScopes": true
}
}
}
[...]
Свойство LogLevel
в Logging
задает минимальный уровень дляжурнал для выбранных категорий.В этом примере категории System
и Microsoft
регистрируются на уровне Information
, а все остальные - на уровне Debug
.
Разделы переопределения предназначены для изменения записей журнала, имеющих эти пространства имен.,Обычно вы хотели бы видеть Debug
записи журнала для вашего кода , но более высокий уровень (например, Information
или Warning
) для "не вашего кода", как Microsoft и System.
Вместо того, чтобы помещать эту конфигурацию в файл конфигурации, вы также можете использовать код:
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseSerilog((ctx, cfg) =>
{
cfg.ReadFrom.Configuration(ctx.Configuration)
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information);
})
.Build();
Код от kimsereyblog.blogspot.com
Их объяснение процесса:
Из примера, который мы увидели, мы можем настроить минимальный уровень ведения журнала по умолчанию .MinimumLevel.Debug()
.Мы также можем переопределить это значение по умолчанию для определенных пространств имен, например, здесь мы установили минимальный уровень ведения журнала для пространства имен Microsoft
на Information
.Это не позволит ASP.NET Core регистрировать все журналы отладки, сохраняя при этом наши собственные журналы отладки.
Другое объяснение от nblumhardt.com :
Первый аргумент Override
- это префикс исходного контекста, который обычно сопоставляется с именем типа, указанным в пространстве имен класса, связанного с регистратором.
...
ЭффектТаким образом, в приведенной выше конфигурации генерируются события только на уровне Warning
или выше, если регистратор принадлежит типу в пространстве имен Microsoft.*
.