0

这应该很简单,但我找不到答案。

我有一个 ASP.NET Core (3.0) 应用程序。我使用Microsoft.Extensions.Logging /ILogger进行日志记录。

我还使用一个库(Fishbus:github / nuget)来与 Azure 消息总线连接。该库记录合适的消息,但使用Serilog来完成。所以开箱即用,不会记录任何消息。

如何将 Serilog“连接”到 Microsoft 日志框架,以便我可以看到库在做什么?

4

1 回答 1

1

你不能,就其本身而言。你很感激图书馆使用的东西。Microsoft.Extensions.Logging是一个门面,所以当你依赖它时,应用程序可以插入一个实际的日志提供程序。但是,当库依赖于提供者本身(即 Serilog)时,就无法将其挂接到Microsoft.Extensions.Logging或其他提供者中。

也就是说,如果您还将 Serilog 提供程序用于Microsoft.Extensions.Logging. 它们不会以相同的方式生成日志,但它们最终都会出现在同一个接收器中。此外,Serilog 本身就是一个门面,它具有接收器的概念,因此虽然您最终无法摆脱 Serilog,但您可以通过 Serilog 配置不同的日志记录目标,而不是使用不同的Microsoft.Extensions.Logging提供程序。

于 2019-10-02T12:57:16.977 回答