从我能告诉的既不Log4Perl或其任何相关模块在CPAN支持旋转&压缩日志文件。如何旋转和压缩Log4perl日志文件?
旋转可以通过使用来完成:
但是这两个模块都不支持轮转和压缩。 (Log :: Dispatch :: FileRotate在它的todo列表中有它,但它目前没有实现)。
通过使用Log :: Log4perl :: Appender :: File的recreate_check_interval或recreate_check_signal,可以在Linux中使用标准Logrotate工具来执行此操作。
从最初的测试看来,使用Logrotate看起来像使用delaycompress选项可以做到这一点 - 即使在高负载的机器上也是如此,因为一旦文件被移动,log4perl将继续记录到相同的文件句柄,直到信号被毫无遗漏。
但是,如果没有使用delaycompress,并且在压缩日志文件和捕获Perl程序捕获信号之间(即使稍稍延迟),某些日志记录数据可能会丢失。
您认为如何?还有其他的选择我们没有想到?
不直接回答问题,但有很多log4perl配置的很好的例子,这里的地址轮转日志文件等http://www.netlinxinc.com/netlinx-blog/52-perl/126-eight-loglog4perl-recipes。 html – 2012-05-15 01:06:16
...和一些伟大的食谱在这里http://log4perl.sourceforge.net/releases/Log-Log4perl/docs/html/Log/Log4perl/FAQ.html – 2012-05-15 01:23:13