2013-11-01 61 views
1

我在Linux服務器上使用Logback的RollingFileAppender。如果我在進程運行時刪除日誌文件Logback(1.0.13)似乎沒有重新創建日誌文件,並且日誌消息丟失。Logback不會在Linux上重新創建已刪除的日誌文件

我發現了另一個related question,其中的答案是恢復機制是操作系統特定的。

有沒有人找到一種方法讓Logback重新創建文件,或者如果它檢測到文件已被刪除,則調用StatusListener?

回答

1

使用擴展RollingFileAppender並覆蓋writeOut()的自定義FileAppender解決它。檢查文件不存在後,使用openFile(getFile())重新創建文件。

+0

我不知道這是否非常有效。你在每個日誌事件中檢查文件的存在嗎? –

+0

對不起,我無法再訪問此代碼,但我認爲是。除非您有嚴格的性能要求,否則不一定是問題。 – frodesto

相關問題