Я начал делать это сам. Я установил (Nuget):
- Serilog
- Serilog.Extensions.Logging
- Serilog.Sinks.File
- Serilog.Sinks.Console (чтобы использовать Serilog для всех моих ведение журнала)
Код: Выделить всё
ServiceCollectionКод: Выделить всё
public static void AddLogging(this IServiceCollection services, Microsoft.Extensions.Logging.LogLevel logLevel)
{
var serilogLogger = new LoggerConfiguration()
.WriteTo.Console()
.WriteTo.File("log.txt")
.CreateLogger();
services.AddLogging(builder =>
{
builder.SetMinimumLevel(logLevel);
builder.AddSerilog(logger: serilogLogger, dispose: true);
});
}
- уровень журнала не тот, который я установил. Кажется, что serilog использует уровень INFO, хотя мне хотелось иметь DEBUG. Почему мои настройки не учитываются? В конце концов, я все еще использую платформу ведения журналов NET Core, поэтому использую ее для настройки уровня журнала.
- действительно ли я правильно выполняю эту настройку? Я не совсем уверен, должно ли расположение быть правдой. Обычно я хочу, чтобы платформа внедрения зависимостей NET Core позаботилась об удалении сервисов.
Подробнее здесь: https://stackoverflow.com/questions/583 ... onsole-app