Logrotate是linux下的一个用于对日志文件分割,压缩或者发送邮件的的工具。当系统中的某个进程会定期生成大量的log文件时,logrotate可以定期(每天一次,每周一次等等)自动化的将这些log文件进行分割压缩,删除等操作。
一般情况下,logrotate是一个在/etc/corn.daily下的每天执行的cronjob,logrotate在一天之中也不会对log文件进行多次的修改,除非log文件压缩的标准时基于文件的大小或者使用了-f参数强制修改。
Logrotate的命令格式为:
logrotate [-dv] [-f|--force] [-s|--state file] config_file+
参数说明:
-v 输出执行过程说明
-d 开启debug模式
-f 强制执行操作,当我们手动修改/etc/logrotate.d目录下的配置是,加上该参数使得修改立即生效
-s 告诉logrotate使用一个备用的状态文件,默认状态文件时/var/lib/logrotate/status
举例说明logrotate的使用:
假设现在自己写的一个脚本在不断的生成monitor.log的日志,随着时间的增长该日志文件也将变得越来越大,为了便于处理,我们不希望该日志过大,因此我们希望该日志按照每天一次的分割频率分割成若干个小文件。
首先