日誌輪替

在IT行業中,日誌輪替(log rotate)是指系統管理中一個自動化的歸檔過期日誌文件的過程,服務器上運行的大型軟件,例如LAMP,通常會記錄每一條請求,面對數量巨大的日誌,日誌輪替提供了一個有效的方法來限制日誌文件的大小,同時保留近期的日誌用於分析。

歸檔方法

Linux系統中,日誌輪替一般使用 logrotate 命令實現,他可以用來將過期日誌發給系統管理員,過期的日誌也可以壓縮來減少體積。

FreeBSD系統和macOS系統中,通常使用 newsyslog 命令,它能根據文件大小、具體時間、時間周期(或者這些條件的組合)來自動觸發日誌輪替,他也能壓縮日誌,並提醒程序更替日誌。

一般來說,新的日誌文件由應用程序周期性生成,舊的日誌文件會被重新命名(在文件名後添加數字1),每次增加新文件時,舊日誌的文件名後面的數字就會增加1,所以它是通過替換文件右面的的數字來實現(這也是Log rotate文件名的來源),舊的日誌文件後面的數字到達一個閾值時,可以被刪除或者存到離線介質中來釋放服務器中的空間。

參見