
在日常运维中,Nginx 的访问日志和错误日志会随着时间的推移不断增长,最终可能导致日志文件过大,影响管理和分析的效率。为了解决这个问题,我们可以将日志按日期切割,生成每日的独立日志文件。这不仅方便日志的管理,还能更高效地进行问题排查和数据分析。以下是具体的操作步骤,希望能帮助到你。
将 Nginx 的访问日志和错误日志按日期切割,避免日志文件过大,方便管理和分析。
/usr/local/nginx/sbin/ 下创建一个日志切割脚本:vim /usr/local/nginx/sbin/cut_nginx_log.sh添加以下内容:
#!/bin/bash
log_path="/usr/local/nginx/logs"
today=$(date -d "yesterday" +"%Y-%m-%d")
# 切割访问日志
mv $log_path/access.log $log_path/access_$today.log
# 切割错误日志
mv $log_path/error.log $log_path/error_$today.log
# 通知 Nginx 重新生成日志文件
kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)chmod +x /usr/local/nginx/sbin/cut_nginx_log.shcrontab 配置每天凌晨切割日志:crontab -e
添加以下内容:
0 0 * * * /usr/local/nginx/sbin/cut_nginx_log.sh/usr/local/nginx/sbin/cut_nginx_log.shls /usr/local/nginx/logs/预期输出:日志目录中应出现 access_<日期>.log 和 error_<日期>.log 文件。

通过为 Nginx 设置日志切割脚本并配置定时任务,我们可以轻松实现日志的自动管理,避免日志文件过大带来的麻烦。这个方案简单高效,适合日常运维工作。如果你有其他关于 Nginx 日志管理的技巧,欢迎留言交流,让我们共同提升运维效率!
成功的路上没有捷径,只有不断的努力与坚持。如果你和我一样,坚信努力会带来回报,请关注我,点个赞,一起迎接更加美好的明天!你的支持是我继续前行的动力!"
"每一次创作都是一次学习的过程,文章中若有不足之处,还请大家多多包容。你的关注和点赞是对我最大的支持,也欢迎大家提出宝贵的意见和建议,让我不断进步。"
神秘泣男子

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。