我在一个ASP.NET Core 3.1项目中使用了Serilog.AspNetCore 3.2.0和Serilog.Sinks.File 4.2.0,我在我的 appsettings.json
:
"Serilog": {
"WriteTo": [
{
"Name": "File",
"MinimumLevel": "Verbose",
"Enrich": "FromLogContext",
"Args": {
"path": "Server1_.log",
"rollingInterval": "Day",
"buffered": "false",
"restrictedToMinimumLevel": "Verbose"
}
}
]
}
我的服务配置如下。
.UseSerilog(
(hostingContext, loggerConfiguration)
=> loggerConfiguration.ReadFrom.Configuration(hostingContext.Configuration)
)
当我改变输出文件名时,它也会相应改变。
我使用下面的代码进行测试。
Log.Information("Starting...");
Log.Debug("Starting...");
Log.Warning("Starting...");
这是输出结果
2020-06-03 12:05:23.372 +02:00 [INF] Starting...
2020-06-03 12:05:23.372 +02:00 [WRN] Starting...
Debug和Verbose级别被忽略。
我怎样才能在日志中添加较低的级别?
你的JSON模式不太正确。MinimumLevel
还有... Enrich
是顶层的。
"Serilog": {
"MinimumLevel": "Verbose",
"Enrich": ["FromLogContext"],
"WriteTo": [
{
"Name": "File",
"Args": {
"path": "Server1_.log",
"rollingInterval": "Day",
"buffered": "false",
"restrictedToMinimumLevel": "Verbose"
}
}
进一步的例子 在README中.