gpt4 book ai didi

ubuntu - Nginx logrotate 不清理日志

转载 作者:行者123 更新时间:2023-12-04 19:15:07 24 4
gpt4 key购买 nike

我有这个用于 nginx logrotate 的配置

/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

并且 logrotate 状态是
"/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

哪个没有提供有关最近几天轮换的太多信息。如何调试配置?

最佳答案

您可以使用 -df 参数调试特定脚本:

logrotate -df /etc/logrotate.d/nginx
并立即执行(如果需要):
logrotate -f /etc/logrotate.d/nginx
请注意,/etc/logrotate.conf 文件中的设置通常适用于所有 logrotate 脚本,因此可能需要将其与您的特定脚本一起运行:
logrotate /etc/logrotate.conf /etc/logrotate.d/nginx
但是,此配置文件通常会调用 logrotate.d 文件夹下的所有脚本,因此您可能需要暂时将此行注释掉,或创建此文件的副本以进行测试,其中不包括目录调用:
#include /etc/logrotate.d
另请阅读 延迟压缩 man 中的配置选项:

Postpone compression of the previous log file to the next rotationcycle. This has only effect when used in combination with compress. Itcan be used when some program can not be told to close its logfile andthus might continue writing to the previous log file for some time.

关于ubuntu - Nginx logrotate 不清理日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41159261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com