购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

6.3 使用日志轮转

所有的日志文件都会随着时间和访问次数的增加而迅速增长,因此必须对日志文件进行定期清理,以免造成磁盘空间的浪费。由于查看小文件的速度比大文件快很多,使用日志轮转同时也节省了系统管理员查看日志所用的时间。日志轮转可以使用系统提供的logrotate功能。

6.3.1 logrotate命令及配置文件参数说明

该程序可自动完成日志的压缩、备份、删除等工作,并可以设置为定时任务,如每日、每周或每月处理。其命令格式如下。

参数说明如表6.4所示。

表6.4 logrotate命令参数说明

logrotate的主配置文件为/etc/logrotate.conf和/etc/logrotate.d目录下的文件,查看logrotate主配置文件的例子如下:

logrotate配置文件参数说明如表6.5所示。

表6.5 logrotate配置文件参数说明

6.3.2 利用logrotate轮转Nginx日志

本示例主要使用logrotate轮转Web服务Nginx的访问日志,Nginx的访问日志文件位于/data/logs目录下,安装位置位于/usr/local/nginx。

1.配置文件设置/etc/logrotate.d/nginx

首先配置轮转设置参数,如下所示:

参数说明如下。

● notifempty:如果文件为空则不轮转。

● daily:日志文件每天轮转一次。

● rotate 5:轮转文件保存为5份。

● postrotate/endscript:日志轮转后执行的脚本。这里用来重启Nginx,以便重新生成日志文件。

2.测试

注意观察该命令的输出,若没有error日志,则正常生成轮转文件,配置完成。

3.设置为每天执行

如需该功能每天自动轮转,可以将对应命令加入crontab,在/etc/cron.daily目录下有logrotate执行的脚本,该脚本会通过crond调用,每天执行一次: uwtahnIFjpD8pheybQMPlFOxniZsHkkjcqz6p4Tad8RmoNR7SrC2Wo4lTzHF7j5H

点击中间区域
呼出菜单
上一章
目录
下一章
×