日志轮替

在IT行业中,日志轮替(log rotate)是指系统管理中一个自动化的归档过期日志文件的过程,服务器上运行的大型软件,例如LAMP,通常会记录每一条请求,面对数量巨大的日志,日志轮替提供了一个有效的方法来限制日志文件的大小,同时保留近期的日志用于分析。

归档方法

Linux系统中,日志轮替一般使用 logrotate 命令实现,他可以用来将过期日志发给系统管理员,过期的日志也可以压缩来减少体积。

FreeBSD系统和macOS系统中,通常使用 newsyslog 命令,它能根据文件大小、具体时间、时间周期(或者这些条件的组合)来自动触发日志轮替,他也能压缩日志,并提醒程序更替日志。

一般来说,新的日志文件由应用程序周期性生成,旧的日志文件会被重新命名(在文件名后添加数字1),每次增加新文件时,旧日志的文件名后面的数字就会增加1,所以它是通过替换文件右面的的数字来实现(这也是Log rotate文件名的来源),旧的日志文件后面的数字到达一个阈值时,可以被删除或者存到离线介质中来释放服务器中的空间。

参见