Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.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
Log4net 维护日志文件中的最后N个日志条目(循环日志记录)_Log4net - Fatal编程技术网

Log4net 维护日志文件中的最后N个日志条目(循环日志记录)

Log4net 维护日志文件中的最后N个日志条目(循环日志记录),log4net,Log4net,log4net支持循环日志记录吗?(我认为这是正确的说法。) 我想维护日志文件中的最后N个条目。假设N=100。如果我有100个条目,然后添加一个101st,那么所需的行为将是删除文件顶部的第一个条目,并在底部添加新的日志条目,这样总是有100个(或更少)条目,最旧的条目在顶部,最新的条目在底部 基本上,我想每分钟将几条信息记录到一个文件中。我只对看/保存最后100个条目感兴趣。我可以推出自己的解决方案,但我已经在使用log4net记录其他问题,并希望我也能将其用于此目的 谢谢开箱即用的解决方案

log4net支持循环日志记录吗?(我认为这是正确的说法。)

我想维护日志文件中的最后N个条目。假设N=100。如果我有100个条目,然后添加一个101st,那么所需的行为将是删除文件顶部的第一个条目,并在底部添加新的日志条目,这样总是有100个(或更少)条目,最旧的条目在顶部,最新的条目在底部

基本上,我想每分钟将几条信息记录到一个文件中。我只对看/保存最后100个条目感兴趣。我可以推出自己的解决方案,但我已经在使用log4net记录其他问题,并希望我也能将其用于此目的


谢谢

开箱即用的解决方案是有大小限制的
RollingFileAppender
。您不能指定要在文件中保留多少条目,但是如果您使用大小(比如100KB),您可以得到所需的内容

以下是一个例子:


我尝试了这种方法,但它不是循环的,至少我能说的不是循环的。也就是说,当达到100KB限制时,它创建了一个新的空白日志文件,而不是从文件的开头删除内容。您共享的文档说明了我的问题-“当日志文件达到MaxFileSize时,它将被截断。”我不希望日志文件被截断—我希望删除最早的数据,以便为新数据腾出空间。