首页 >后端开发 >php教程 >使用cronolog切割nginx访问日志,定时清理旧日志

使用cronolog切割nginx访问日志,定时清理旧日志

不言
不言原创
2018-07-07 16:38:451934浏览

这篇文章主要介绍了关于使用cronolog切割nginx访问日志,定时清理旧日志 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

准备工作

安装cronolog

brew instal cronolog
如果遇到这个错误

2550601427-5af18a1bce0b2_articlex[1].png

执行
sudo chown -Rwhoami:admin /usr/local/sbin
如果没有/usr/local/sbin这个文件夹先执行
mkdir /usr/local/sbin

使用cronolog切割日志

创建日志源管道文件

mkfifo /usr/local/etc/nginx/access.log.pipe

配置nginx访问日志

access_log  /usr/local/etc/nginx/access.log.pipe  main;

启动cronolog,当access.log.pipe产生数据时,使用cronolog将access.log.pipe中的数据转移到access.log.%Y-%m-%d

nohup cat /usr/local/etc/nginx/logs/access.log.pipe | nohup /usr/local/sbin/cronolog /usr/local/etc/nginx/logs/access.log.%Y-%m-%d &

启动或重启nginx

nginx start或nginx -s raload

定时清理旧日志

创建清理脚本

vi delete_nginx_logs.sh

保存内容

LOG_PATH="/usr/local/etc/nginx/logs"
save_days=7
find $LOG_PATH -mtime +$save_days -exec rm -rf {} \;

添加定时执行任务

crontab -e

每天0点执行
0 0 0 * * sh /usr/local/nginx/delete_nginx_logs.sh

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

Nginx中Location的配置方法

使用nginx在一台服务器部署多个Web Server

以上是使用cronolog切割nginx访问日志,定时清理旧日志的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn