Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.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# 带有自定义文件名的Log4net滚动文件 我们只想创建4个日志文件,若日志文件的数量增加,那个么最旧的日志文件应该被删除,其他日志文件将被重命名 每小时后,日志文件名应与前一小时相同 日后日志文件名应与前一天更改 和新文件名应始终相同_C#_Asp.net Core - Fatal编程技术网

C# 带有自定义文件名的Log4net滚动文件 我们只想创建4个日志文件,若日志文件的数量增加,那个么最旧的日志文件应该被删除,其他日志文件将被重命名 每小时后,日志文件名应与前一小时相同 日后日志文件名应与前一天更改 和新文件名应始终相同

C# 带有自定义文件名的Log4net滚动文件 我们只想创建4个日志文件,若日志文件的数量增加,那个么最旧的日志文件应该被删除,其他日志文件将被重命名 每小时后,日志文件名应与前一小时相同 日后日志文件名应与前一天更改 和新文件名应始终相同,c#,asp.net-core,C#,Asp.net Core,例如: 现在,如果创建了新文件,则应删除最旧的文件,并重命名其他文件,如下所示 现在如果小时发生更改,文件名应为(yyyyymmddhh),如下所示 现在如果日期更改,文件名应为(yyyyMMdd),如下所示 使用log4net如何实现这一点? 提前感谢您我们可以创建一个RollingFileAppender,每天备份文件,最多4个文件。我们可以配置为每天备份或每小时备份,但不能同时进行。根据您的要求更改DatePattern,下面是示例配置 <appender na

例如:






现在,如果创建了新文件,则应删除最旧的文件,并重命名其他文件,如下所示
现在如果小时发生更改,文件名应为(yyyyymmddhh),如下所示



现在如果日期更改,文件名应为(yyyyMMdd),如下所示



使用log4net如何实现这一点?
提前感谢您

我们可以创建一个RollingFileAppender,每天备份文件,最多4个文件。我们可以配置为每天备份或每小时备份,但不能同时进行。根据您的要求更改
DatePattern
,下面是示例配置

 <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
        <file value="log.txt" />
        <appendToFile value="true" />
         <rollingStyle value="Composite" />
        <datePattern value="yyyyMMdd" />
        <maxSizeRollBackups value="4" />
        <staticLogFileName value="true" />
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
        </layout>
    </appender>

Time 01-11-2019 10:20
Log file name - abc.log
Log file size - 11kb
old Log file name - abc.log.1
old Log file size - 10kb
Time 01-11-2019 10:45
Log file name - abc.log
Log file size - 12kb
old Log file name - abc.log.1
old Log file size - 11kb
old Log file name - abc.log.2
old Log file size - 10kb
Time 01-11-2019 10:50
Log file name - abc.log
Log file size - 13kb
old Log file name - abc.log.1
old Log file size - 12kb
old Log file name - abc.log.2
old Log file size - 11kb
old Log file name - abc.log.3
old Log file size - 10kb
Time 01-11-2019 10:55
Log file name - abc.log
Log file size - 14kb
old Log file name - abc.log.1
old Log file size - 13kb
old Log file name - abc.log.2
old Log file size - 12kb
old Log file name - abc.log.3
old Log file size - 11kb

(log file with size 10kb get deleted)
Time 01-11-2019 11.10
Log file name - abc.log
Log file size - 15kb
old Log file name - abc.log.2019110110.1
old Log file size - 14kb
old Log file name - abc.log.2019110110.2
old Log file size - 13kb
old Log file name - abc.log.2019110110.3
old Log file size - 12kb

(log file with size 11kb get deleted)
Time 02-11-2018 11.10
Log file name - abc.log
Log file size - 16kb
old Log file name - abc.log.20191101.1
old Log file size - 15kb
old Log file name - abc.log.20191101.2
old Log file size - 14kb
old Log file name - abc.log.20191101.3
old Log file size - 13kb

(log file with size 12kb get deleted)
 <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
        <file value="log.txt" />
        <appendToFile value="true" />
         <rollingStyle value="Composite" />
        <datePattern value="yyyyMMdd" />
        <maxSizeRollBackups value="4" />
        <staticLogFileName value="true" />
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
        </layout>
    </appender>