從我能告訴的既不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