過時的 NFS fila 使用 log4j 處理錯誤

過時的 NFS fila 使用 log4j 處理錯誤

我們有幾個獨立運行的 java 程式實例,但寫入同一個日誌檔案。

當日誌檔案由多個進程實例輪換和寫入時,我們很少會遇到過時的 NFS 檔案句柄錯誤。

我們現在正在考慮為每個實例建立單獨的日誌檔案。有沒有人已經遇到這個問題並且有更好的解決方案。

謝謝奈恩

答案1

不要忘記 NFS 是不是符合 POSIX 標準的檔案系統。這個很關閉POSIX 合規性,這是人們通常會犯的錯誤。暴露其不一致性的領域之一是刪除和重新命名文件,尤其是目錄。

我的建議是避免讓兩個遠端進程存取 NFS 磁碟區上的相同文件,除非應用程式經過專門編碼以使用 NFS。

答案2

是的,如果您刪除另一個主機透過 NFS 開啟的文件,那麼您會看到此錯誤。

在這種情況下,單獨的日誌檔案(或使用 syslog,或不記錄到 NFS)聽起來是最好的主意。

相關內容