Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 每次使用Serilog创建新记录器时,使用更新的后缀创建新文件_C#_Logging_Asp.net Core_Serilog - Fatal编程技术网

C# 每次使用Serilog创建新记录器时,使用更新的后缀创建新文件

C# 每次使用Serilog创建新记录器时,使用更新的后缀创建新文件,c#,logging,asp.net-core,serilog,C#,Logging,Asp.net Core,Serilog,我想让Serilog在每次创建新的记录器时都以递增的后缀写入一个新文件 例如: log_001.txt log_002.txt 基本上,我希望OP在github问题上发布以下行为: 我想要的是OP想要摆脱的 当我使用下面的代码时,仅生成一个文件,即使记录器被多次更新: var log = new LoggerConfiguration() .WriteTo.RollingFile(@"C:\temp\testlog\log-{Date}.txt") .CreateLogge

我想让Serilog在每次创建新的记录器时都以递增的后缀写入一个新文件

例如:

  • log_001.txt
  • log_002.txt
基本上,我希望OP在github问题上发布以下行为:

我想要的是OP想要摆脱的

当我使用下面的代码时,仅生成一个文件,即使记录器被多次更新:

var log = new LoggerConfiguration()
    .WriteTo.RollingFile(@"C:\temp\testlog\log-{Date}.txt")
    .CreateLogger();

log.Debug("Created logger...");

我建议您检查
生成的一个文件是否包含
创建的记录器…

对于
LoggerConfiguration
,其默认
LogEventLevel
Serilog.Events.LogEventLevel.Information
,这意味着您的
log.Debug(“创建的记录器…”)代码不会创建日志记录

我建议您使用以下代码进行测试:

        var log = new LoggerConfiguration()
                .MinimumLevel.Debug()
                .WriteTo.RollingFile(@"C:\Windows\Temp\testlog\log-{Date}.txt")
                .CreateLogger();

        log.Debug("Created logger1...");

        var log1 = new LoggerConfiguration()
                 .MinimumLevel.Debug()
                .WriteTo.RollingFile(@"C:\Windows\Temp\testlog\log-{Date}.txt", Serilog.Events.LogEventLevel.Debug)
                .CreateLogger();

        log1.Debug("Created logger2...");

上面的代码将创建两个文件,如果您需要与
log_001.txt
log_002.txt
完全相同的文件名,您需要实现自己的
sink
,请查看此讨论。

对于记录器来说,这似乎是一个不寻常的要求。也许一个简单的文件。Open+Write行是另一种选择?@ChristophLütjen我想我可以这样做。尽管如此,我还是希望利用一些常见的日志功能(如时间戳、上下文、错误级别、属性丰富、json记录变量等)