【问题标题】:ASP.NET - Serilog - Multiple sinks each one for a different useASP.NET - Serilog - 多个接收器,每个接收器用于不同的用途
【发布时间】:2018-10-26 11:28:35
【问题描述】:

我想使用 Serilog 进行日志记录,因为我使用过它并且它符合我的需求。

这种情况的不同之处在于我需要记录不同的模块,并且我希望每个模块记录在不同的文件夹中,甚至可能在不同的接收器中。

我不是在谈论使用多个接收器,而是在谈论做这样的事情:

Serilog.Log(LogInstance1,"Log for module 1") // Logs in a rolling text file in folder X 10 files of 1MB each
Serilog.Log(LogInstance2,"Log for module 2") // Logs i na text file that doesn't delete old entries

有谁知道这是否可以通过 Serilog 实现?

【问题讨论】:

    标签: asp.net .net logging serilog


    【解决方案1】:

    您可以创建多个单独的ILogger 实例,每个实例都有自己的配置和接收器集等;每个管道完全独立运行,没有任何类型的共享状态。

    var logger1 = new LoggerConfiguration().
        .WriteTo.File(...10...)
        .CreateLogger();
    
    var logger2 = new LoggerConfiguration()
        .WriteTo.File(...)
        .CreateLogger();
    
    logger1.Information("Log for Module 1");
    logger2.Information("Log for Module 2");
    

    【讨论】:

    • 太棒了!这就是我一直在寻找的。如果你觉得我的问题不错,你能给我投票吗?
    猜你喜欢
    • 1970-01-01
    • 2014-10-06
    • 1970-01-01
    • 2020-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-22
    • 1970-01-01
    相关资源
    最近更新 更多