【问题标题】:Multiple Serilog Loggers多个 Serilog 记录器
【发布时间】:2019-08-17 23:53:36
【问题描述】:

是否可以有多个 serilog 记录器?目前在我的 WebApi 中,我可以调用 Log.Information 例如来记录信息事件,但是有没有办法可以改为制作不同的日志并从我的控制器调用 ExternalLog.Information 或 AuthenticationLog.Information?这背后的目的是我的 web api 目前正在为不同但相互关联的项目使用多个不同的数据库,我想将日志存储在与它们相关的每个数据库中,而不是需要创建一个额外的日志数据库。可能的。

我认为不太可能的更好解决方案是,我可以将单个控制器映射到日志,以便特定控制器调用日志的任何时候,它都会写入 AuthenticationLog。

【问题讨论】:

  • 当然,您可以制作多个记录器。是什么阻止你抓住new LoggerConfiguration().CreateLogger(); 制作的ILogger
  • @mason - “当然,您可以制作多个记录器。是什么阻止您使用 new LoggerConfiguration().CreateLogger(); 制作的 ILogger?” 为我工作。似乎比sublogging简单得多。在我看来,子日志记录是将单个日志事件源分解为应用程序特定部分的日志?

标签: c# asp.net-web-api logging serilog


【解决方案1】:

我相信这个问题的答案是使用子记录器,而不是单独的记录器。我发现你可以做.WriteTo.Logger 并在那里进一步过滤。如果没有其他人有更好的解决方案(当然,如果我能够让它工作),我会接受这个作为答案。我需要能够过滤控制器或动作名称,此时我有第二个堆栈溢出问题来弄清楚如何获取该数据。 Serilog with Asp.net Web Api not using enricher

【讨论】:

    猜你喜欢
    • 2016-12-10
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    • 1970-01-01
    相关资源
    最近更新 更多