首页 » Linux » CentOS » Linux日志管理神器logrotate

Linux日志管理神器logrotate

 

在日常服务器运维过程中,对于日志整理是必不可少的,一般情况下都是通过shell“造轮子”来定时整理压缩log,大家往往忽略了一个linux下自带的一款日志管理神器logrotate,本篇文章针对logrotate一些参数使用进行了一下梳理。

logrotate是一个日志管理程序,用来把旧的日志文件删除(备份),并创建新的日志文件,这个过程称为“转储”。

系统默认安装logrotate工具,主配置文件为/etc/logrotate.conf,一般我们会将配置文件放在/etc/logrotate.d/目录下。

跟多参数内容可以见:http://man7.org/linux/man-pages/man8/logrotate.8.html

 

logrotate配置文件参数解释:

daily/weekly/monthly/yearly:转储周期,每天、每周、每月、每年,任选其一,一般都是以”天“为周期
rotate 12:保留12个历史log版本
dateext:切割后的log文件以当前日期格式结尾(即xxx.log-20190401),如果注释掉,则是以数字方式递增结尾(即xxx.log.1)
compress:使用gzip压缩转储后的log,日志切割后自动压缩,压缩后缀为.gz
delaycompress:与compress选项一起使用,delaycompress指示logrotate不要将最近的日志压缩,压缩在下一次轮询周期进行。
missingok:忽略错误
notifempty:如果log是空,不转储
create 0664 www www:指定权限创建全新的log文件

logrotate命令几个常用的参数:

-d:debug模式,用于测试配置文件是否有错误
-f:强制执行log转储,即手动触发
-v:显示执行过程
-m:发送log到指定邮箱

例:手动执行log转储
logrotate -fv /etc/logrotate.d/mysql-log-rotate

 

这里以nginx和mysql举两个示例,可以根据自身情况修改使用

原文链接:Linux日志管理神器logrotate,转载请注明来源!

0