我的:
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*",
.......
别人的:
"Logging": {
"IncludeScopes": false,
"Debug": {
"LogLevel": {
"Default": "Warning"
}
},
"Console": {
"LogLevel": {
"Default": "Warning"
}
}
"AllowedHosts": "*",
.........
前提:这个是基于netcore框架的api项目,项目中使用了swagger
"IncludeScopes": false
表示不记录日志的 scope 信息, 如果设置为 true , 对于 DeveloperExceptionPageMiddleware ,会在日志中记录 ConnectionId, RequestId, RequestPath ,比如fail: Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
=> ConnectionId:0HLKMD2S8UMMD => RequestId:0HLKMD2S8UMMD:00000001 RequestPath:/
An unhandled exception has occurred while executing the request.
推荐阅读:How to include scopes when logging exceptions in ASP.NET Core
Debug
与 Console
不是二挑一,是并肩作战,日志同时输出到 Debug (VS调试窗口)与 Console(命令行控制台)学到了,谢谢
IncludeScopes:
using(logget.beginscope("aaaa")){
logger.info("info")
}
大概输出: classname info. =>aaaa.
可以启用后,你访问api的日志。就有类似
*** => /requestpath
可以让你的日志有层次结构
Debug,Console section
这是针对这2个logger的provider的单独配置。
比如我可以console 输出所有日志 loglevel:trace,可以在debug你们只输出info级别以上。
还可以有其他的provider,比如eventlog,nlog,等之类的。
学习了,谢谢