nginx error.log定期清理

版权声明:QQ:1009002494 https://blog.csdn.net/Doudou_Mylove/article/details/86476117

遇到一个Linux服务器磁盘报警,du -sh * |gre G进去一看是/etc/nginx/logs/error.log占了将近300G, 又用tail -f error.log让我大吃一惊,日志显示有两个IP用飞快的速度一直往这个error.log里面写东西,具体原因不知道,但是服务器要清理,于是就把nginx.conf里面的错误日志重新指向了黑洞。

vim nging.conf

error_log  /dev/null crit;

其实这样是不可取的,应该找到源头彻底解决问题。

或者用下面脚本定时清理

#!/bin/bash
#切割nginx的日志,然后定期删除
source /etc/profile
log_path=/etc/nginx/logs
d=`date +%Y-%m-%d`
d90=`date -d'1 day ago' +%Y-%m-%d`   ##1天前
cd ${log_path} && cp error.log $log_path/backuplog/errorlog$d.log
gzip -f $log_path/backuplog/errorlog$d.log
echo > error.log
rm -rf $log_path/backuplog/errorlog${d90}.log.gz

crontab -e

59 23 * * * /bin/sh /etc/nginx/logs/nginx_error.log_clean.sh

猜你喜欢

转载自blog.csdn.net/Doudou_Mylove/article/details/86476117