Nginx设置日志定时切割

阿豪 20-02-12 515阅读

温馨提示:这篇文章已超过715天没有更新,请注意相关的内容是否还可用!

自定义shell 脚本

# vi /usr/local/sbin/nginx_log_rotate.sh//写入如下内容

#! /bin/bash  
## 假设nginx的日志存放路径为/data/logs/  
#d是昨天的日期年月日  
d=`date -d "-1 day" +%Y%m%d`  
#logdir日志目录  
logdir="/data/logs"  
nginx_pid="/usr/local/nginx/logs/nginx.pid"  
cd $logdir  
# 做了个循环  
for log in `ls *.log`  
do  
mv $log $log-$d  
done  
#从新加载下  
/bin/kill -HUP `cat $nginx_pid`

执行过程

image.png

image.png

任务计划

0 0 * * * /bin/bash /usr/local/sbin/nginx_log_rotate.sh

当然有生成就必须得有删除呀,不然肯定会占用磁盘空间的你说是吧

删除30天以前的

# find /tmp/ -name *.log-* -type f -mtime +30 |xargs rm

文章版权声明:除非注明,否则均为阿豪运维笔记原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

Linux怎么增加修改磁盘分区Inodes的大小

bash: pip3: command not found

killall出现-bash: killall: command not found

Centos系统云服务器如何查看使用的是什么虚拟化技术

VMware虚拟机安装Ubuntu Server 20.04.2 LTS

CentOS8系统忘记root密码如何修改

cmake编译出错:No CMAKE_CXX_COMPILER could be found.

error electron@11.4.3 postinstall: `node install.js`