[英]Serilog does not write application initial logs to console with appsettings
我已經配置了 appsettings.json 文件來寫入控制台日志。 該應用程序使用 do.net core 6。
{
"Serilog": {
"Using": [ "Serilog.Sinks.Console" ],
"MinimumLevel": "Debug",
"WriteTo": [
{ "Name": "Console" }
]
}
}
並從如下配置中讀取。
builder.Logging.ClearProviders();
var logger = new LoggerConfiguration()
.ReadFrom.Configuration(builder.Configuration)
.CreateLogger();
builder.Logging.AddSerilog(logger);
但是當我運行應用程序時,初始日志不會寫入控制台。 我有一個黑色的空控制台。
檢查文檔,並嘗試使用@Rippo 指出的 Log.Logger。
您可以嘗試通過Program.cs
中的Host
配置它嗎?
(.net core 6,如果你有不同的版本,請調整它)
builder.Host.UseSerilog((hostContext, services, configuration) => {
configuration.MinimumLevel.Is(LogEventLevel.Debug)
.Enrich.FromLogContext()
.WriteTo.Console()
.WriteTo.Debug() // also try writing to the debug console and see if it output something
});
我的MainAsync
是這樣的,在 .net6.0 控制台應用程序中
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(Configuration)
.CreateLogger();
從 memory 您需要告訴 Serilog 配置。 請注意Log.Logger
,我從未像您一樣嘗試將Serilog
插入到builder.logger
配置中。
{
"Serilog": {
"Using": [ "Serilog.Sinks.Console" ],
"MinimumLevel": "Verbose",
"WriteTo": [
{ "Name": "Console" },
{
"Name": "File",
"Args": {
"path": "D:\\_tmp\\LM3.NNB.Organisation.Deduping.txt",
"rollingInterval": "Day"
}
}
],
"Properties": {
"Application": "LM3.NNB.Organisation.Deduping"
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.