У меня есть простое веб-приложение, использующее .Net Core 3.0.
В моем компоновщике хоста я делаю это:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
.UseSerilog((hostingContext, loggerConfiguration) => loggerConfiguration
.ReadFrom.Configuration(hostingContext.Configuration)
.Enrich.FromLogContext()
.WriteTo.Console());
Затем я пытаюсь реализовать его в другом проекте (простая dllиспользующий netcoreapp3.0), на который ссылается проект веб-приложения:
using using Microsoft.Extensions.Logging;
...
private readonly ILogger<MyClass> _logger;
public MyClass(ILogger<MyClass> logger){
_logger = logger;
...
Log.Logger.Information("this is a test {test}", command.GetType().Name);
_logger.LogInformation("Command received: {CommandType}", command.GetType().Name);
}
...
Статический регистратор работает нормально, но вывод _logger выглядит так, как будто я использую ведение журнала по умолчанию. Но насколько я понимаю из чтения этого , компоновщик хоста теперь заменил ILoggerFactory и должен выводить вывод в стиле Serilog.
Как сделать так, чтобы выход _logger был таким же аккуратным, как и выход Serilog?