nginx日志切割及7天前的历史日志删除脚本

scadm 2021年4月25日00:21:43
评论
516 424字

按日期切割nginx日志,并自动删除7天前的日志。

#!/bin/bash
#初始化
LOGS_PATH=/data/nginx/logs
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
#按天切割日志
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log
#向 Nginx 主进程发送 USR1 信号,重新打开日志文件,否则会继续往mv后的文件写内容,导致切割失败.
kill -USR1 `ps axu | grep "nginx: master process" | grep -v grep | awk '{print $2}'`
#删除7天前的日志
cd ${LOGS_PATH}
find . -mtime +7 -name "*20[1-9][3-9]*" | xargs rm -f
exit 0

将这个脚本添加到计划任务,每天执行一次即可:

1 0 * * * /usr/local/script/cut_del_logs.sh
scadm
  • 本文由 发表于 2021年4月25日00:21:43
  • 转载请务必保留本文链接:https://www.wscyun.com/898
Linux自动备份脚本 运维

Linux自动备份脚本

要求:将/data目录下的所有文件cp到/var/backups目录下,文件以当天的日期命名。例如(/var/backups/data.20151103)。并且判断前一天的目录中的文件与当天的区别,如...
Ubuntu自动修改为本地源脚本 运维

Ubuntu自动修改为本地源脚本

搭建好本地源后,如果要一台台去修改sources.list文件比较麻烦,于是就整理了个脚本,只需要在VM上运行脚本即可更改成本地源。 下面脚本可以自动识别Ubuntu是12.04还是14.04版本,添...
tomcat应用自动部署脚本 运维

tomcat应用自动部署脚本

从远程服务器拷贝项目war包,替换web内容及properties文件 运行命令: xx.sh xxx(项目名称) #!/bin/bash RETVAL=0 workpath=/cache1 proj...
Centos7自动修改网卡名称脚本 运维

Centos7自动修改网卡名称脚本

用过Centos7的同学都会发现上面的网卡命名规则是不规范的,对于习惯了之前的eth或em的命名难免想要修改回去。 最近公司在定制Centos7时就提了这个需求,于是就写了个脚本在安装系统时运行脚本自...