我为nginx日志旋转提供了这个配置。
/var/log/nginx/*.log {
daily
missingok
rotate 3
compress
delaycompress
notifempty
create 0640 www-data adm
sharedscripts
prerotate
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi \
endscript
postrotate
invoke-rc.d nginx rotate >/dev/null 2>&1
endscript
}理想情况下,它应该压缩gz中的文件,然后在3天后删除前面的文件,但是下面是我的日志文件
-rw-r--r-- 1 www-data www-data 1.4G Dec 10 00:00 2016-12-09-access.log.1
-rw-r----- 1 www-data adm 0 Dec 11 06:33 2016-12-10-access.log
-rw-r--r-- 1 www-data www-data 1.5G Dec 11 00:00 2016-12-10-access.log.1
-rw-r----- 1 www-data adm 0 Dec 12 06:30 2016-12-11-access.log
-rw-r--r-- 1 www-data www-data 1.6G Dec 12 00:00 2016-12-11-access.log.1
-rw-r----- 1 www-data adm 0 Dec 13 06:46 2016-12-12-access.log
-rw-r--r-- 1 www-data www-data 1.4G Dec 13 00:00 2016-12-12-access.log.1
-rw-r----- 1 www-data adm 0 Dec 14 06:25 2016-12-13-access.log
-rw-r--r-- 1 www-data www-data 1.4G Dec 14 00:00 2016-12-13-access.log.1
-rw-r----- 1 www-data adm 0 Dec 15 06:50 2016-12-14-access.log
-rw-r--r-- 1 www-data www-data 1.5G Dec 15 00:00 2016-12-14-access.log.1
-rw-r--r-- 1 www-data www-data 362M Dec 15 07:59 2016-12-15-access.log
-rw-r----- 1 www-data adm 0 Dec 15 06:50 ---access.log
-rw-r----- 1 www-data adm 254 Dec 15 04:53 ---access.log.1
-rw-r----- 1 www-data adm 202 Oct 25 03:58 ---access.log.10.gz
-rw-r----- 1 www-data adm 578 Oct 24 02:30 ---access.log.11.gz
-rw-r----- 1 www-data adm 1.3K Oct 23 06:11 ---access.log.12.gz
-rw-r----- 1 www-data adm 980 Oct 22 05:39 ---access.log.13.gz
-rw-r----- 1 www-data adm 648 Oct 21 05:59 ---access.log.14.gz
-rw-r----- 1 www-data adm 1006 Oct 20 05:45 ---access.log.15.gz
-rw-r----- 1 www-data adm 150 Dec 13 23:03 ---access.log.2.gz
-rw-r----- 1 www-data adm 89 Dec 13 05:46 ---access.log.3.gz
-rw-r----- 1 www-data adm 421 Dec 12 06:23 ---access.log.4.gz
-rw-r----- 1 www-data adm 277 Nov 8 17:16 ---access.log.5.gz
-rw-r----- 1 www-data adm 174 Nov 7 05:52 ---access.log.6.gz
-rw-r----- 1 www-data adm 104 Nov 5 18:42 ---access.log.7.gz
-rw-r----- 1 www-data adm 111 Nov 4 23:43 ---access.log.8.gz
-rw-r----- 1 www-data adm 220 Oct 25 19:36 ---access.log.9.gz而日志旋转状态是
"/var/log/nginx/2016-12-01-access.log" 2016-12-2
"/var/log/nginx/2016-11-21-access.log" 2016-11-22
"/var/log/nginx/2016-09-16-access.log" 2016-9-17
"/var/log/mail.err" 2016-2-10
"/var/log/nginx/2016-10-06-access.log" 2016-10-7
"/var/log/nginx/2016-09-14-access.log" 2016-9-15
"/var/log/nginx/2016-11-02-access.log" 2016-11-3
"/var/log/nginx/2016-10-04-access.log" 2016-10-5
"/var/log/nginx/2016-10-22-access.log" 2016-10-23
"/var/log/nginx/2016-09-30-access.log" 2016-10-1
"/var/log/landscape/package-reporter.log" 2016-12-15
"/var/log/nginx/2016-10-20-access.log" 2016-10-21对于最近几天的rotation.How,我可以调试配置,但哪方面没有太多的信息?
发布于 2016-12-15 09:27:47
可以使用-df参数调试特定脚本:
logrotate -df /etc/logrotate.d/nginx并立即执行它(如果需要的话):
logrotate -f /etc/logrotate.d/nginx请注意,在/etc/logrotate.conf文件中,经常有一些设置适用于所有的日志旋转脚本,因此可能有必要与特定脚本一起运行它:
logrotate /etc/logrotate.conf /etc/logrotate.d/nginx但是,这个配置文件通常会调用logrotate.d文件夹下的所有脚本,因此您可能希望暂时将该行注释掉,或者创建该文件的副本,用于不包含目录调用的测试:
#include /etc/logrotate.d还可以了解延迟压缩配置选项在男人中的应用
将前一个日志文件的压缩推迟到下一个旋转周期。这只有在与压缩结合使用时才有效果。当某个程序无法被告知关闭其日志文件,因此可能会在一段时间内继续写入以前的日志文件时,可以使用它。
https://stackoverflow.com/questions/41159261
复制相似问题