怎么用logrotate管理分割nginx日志,并指定文件名格式

发布于 2022-08-25 01:52:12 字数 1209 浏览 18 评论 0

我自己写了一个logrotate的管理脚本,来分割nginx的日志,日志的名字希望是access20130423.log,也就是说是access%Y%m%d.log,本来默认不设置的话,会生成access%Y%m%d,可单位那个脑残的日志分析系统,必须要.log后缀。多脑残的系统连后缀名都不能自定义,卧槽,额跑题了。。。

下边的脚本是我写的,可是有问题,最终会生成这样一些文件

root@debian:/var/log/nginx# ls -lh
total 40M
-rw-r----- 1 www-data www-data 6.0M Apr 24 09:48 access.log
-rw-r----- 1 www-data www-data    0 Apr 24 06:26 access20130423.log
-rw-r--r-- 1 www-data www-data 1.6K Apr 23 11:10 access2013042320130424.log
-rw-r----- 1 www-data www-data  34M Apr 24 06:26 access20130424.log
-rw-r----- 1 www-data www-data  21K Apr 24 09:40 error.log
-rw-r--r-- 1 www-data www-data 138K Apr 24 06:24 error20130424.log

第三个文件是怎么回事,为什么会生成这样一个文件。。。。。

是不是 /var/log/nginx/*.log这里 应该明确的指定access.log?

/var/log/nginx/*.log {
 daily
 dateext
 dateformat %Y%m%d
 extension .log
 create
 rotate 60
 #compress
 #delaycompress
 notifempty
 create 0640 www-data www-data
 sharedscripts
 prerotate
     if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
         run-parts /etc/logrotate.d/httpd-prerotate; \
     fi \
 endscript
 postrotate
     [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`
 endscript
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

池予 2022-09-01 01:52:12

是的,你用 *.log 就是匹配所有 .log 文件。你现在只要 access.log 就直接 /var/log/nginx/access.log 即可

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文