我正在使用 .NET 6 构建一个 API,并计划使用 Serilog 作为记录器。根据https://onloupe.com/blog/serilog-vs-mel/有两种可能性:
- 独占使用 Serilog
- 使用 Microsoft.Extensions.Logging 作为日志 API + Serilog 作为日志框架
一方面,仅使用 Serilog 的缺点是我的代码库中的所有内容都会依赖于 Serilog,因此将它与 Microsoft.Extensions.Logging 结合使用应该会提供更大的灵活性。
另一方面,在https://github.com/serilog/serilog-extensions-logging上,他们明确建议将https://github.com/serilog/serilog-aspnetcore用于 .NET Core 项目:
ASP.NET Core 应用程序应该更喜欢 Serilog.AspNetCore 和 UseSerilog()。
有人知道这个建议的原因吗?就灵活性而言,这在我看来是矛盾的?