有什么方法可以在 serilog 中为每个文件配置一个日志级别?
我知道我可以为每个“MinimumLevel”配置一个文件,但这不是我需要的。
我也有类似的需求。经过一些研究,我在 .net core 2.2 web api 的 Startup 类中添加了以下内容:
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Override("Microsoft", LogEventLevel.Error)
.WriteTo.Logger(lc => lc
.Filter.ByIncludingOnly(evt => evt.Level == LogEventLevel.Error)
.WriteTo.RollingFile("C:\\Temp\\erros-logs.txt"))
.WriteTo.Logger(lc => lc
.Filter.ByIncludingOnly(evt => evt.Level == LogEventLevel.Information)
.WriteTo.RollingFile("C:\\Temp\\info-logs.txt"))
.CreateLogger();
如果您正在从 appsettings.json 文件中读取设置并且您想要使用上述内容,您应该从该文件中传输您的逻辑。
我的回答很大程度上受到以下帖子的启发: Restrict to level
我是一名优秀的程序员,十分优秀!