Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.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# 按大小滚动时向文件名追加日期_C#_Log4net - Fatal编程技术网

C# 按大小滚动时向文件名追加日期

C# 按大小滚动时向文件名追加日期,c#,log4net,C#,Log4net,我想将log4net配置为在按大小滚动时将名称附加到文件名。我只使用了log4net的配置部分,不确定是否需要在代码中为此配置一些内容。 这就是我现在拥有的: 只有当rollingStyle设置为date时,我才能在文件名中获取日期,但是它不再按大小滚动 我在这里错过了什么?改变 到 (或任何您喜欢的日期模式) 警告: 不幸的是,文件名中指定的日期仅在配置时计算,这意味着在重新配置log4net之前,将在每个卷上使用相同的日期。我还没有找到解决这个问题的方法。当然没有。如果按大小滚动,日

我想将log4net配置为在按大小滚动时将名称附加到文件名。我只使用了log4net的配置部分,不确定是否需要在代码中为此配置一些内容。
这就是我现在拥有的:


只有当
rollingStyle
设置为
date
时,我才能在文件名中获取日期,但是它不再按大小滚动

我在这里错过了什么?

改变

(或任何您喜欢的日期模式)

警告:


不幸的是,文件名中指定的日期仅在配置时计算,这意味着在重新配置log4net之前,将在每个卷上使用相同的日期。我还没有找到解决这个问题的方法。

当然没有。如果按大小滚动,日期无关紧要。日志可以是多天的,也可以是一天的多个文件。嗯..我想要一些类似于
log2013-31-5_1.log
log2013-31-5_2.log
log2013-1-6_1.log
,等等的东西。我没有要求太多,是吗?:)嗯,是的,你是。您希望如何做到这一点与其他人可能希望如何做到这一点完全不同,因此现在您需要一些方法,不仅定义命名约定,而且定义命名日志文件的业务逻辑,并将其集成到日志文件的滚动方式中。我认为您可以为此编写自己的机制,但它肯定超出了日志库的标准用途。如果你想要更细粒度的控制,我建议改为登录数据库。谢谢你的建议Jeremy,但是使用数据库不是重点。我只是在寻找一种控制日志文件名的方法,它不涉及很多业务逻辑。无论如何,谢谢。这不会生成预期的格式(“log2020-5-5_1.log”、“log2020-5-5_2.log”等)。问题是……它生成了“rolling-log-2020-05-05.1.txt”、“rolling-log-2020-05-05.2.txt”,但无法控制“.1”或“.2”模式。。。