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

准备工作

安装cronolog

brew instal cronolog
如果遇到这个错误

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

执行
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

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

相关推荐:

Nginx中Location的配置方法

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

以上就是使用cronolog切割nginx访问日志,定时清理旧日志的详细内容,更多请关注Work网其它相关文章!

09-18 11:07