nginx日志定时切割

目录

1、日志切割脚本

2、定时任务

2.1 安装 crontabs服务并设置开机自启

2.2 设置用户自定义定时任务

2.3保存生效


1、日志切割脚本

cd /opt/test

上传脚本文件cutLog.sh

chmod 777 cutLog.sh

#!/bin/bash



echo "**************** 开始日志切割 ************************"



log_date=$(date +"%Y-%m-%d-%H")

logs_path="/usr/local/openresty/nginx/logs/"  #日志source

save_path="/usr/local/openresty/nginx/logs/"  #日志target



if [ ! -d "$save_path" ]; then

  mkdir -p "$save_path"

fi



mv ${logs_path}error.log ${save_path}error${log_date}.log



# 发送信号重新打开日志文件

kill -USR1 `cat /usr/local/openresty/nginx/logs/nginx.pid`



echo "*************** 日志切割完成 ************************"

2、定时任务

2.1 安装 crontabs服务并设置开机自启

先查看是否安装有crontabs:systemctl status crond

没有则安装:

yum install crontabs
systemctl enable crond (设为开机启动)
systemctl start crond(启动crond服务)
systemctl status crond (查看状态)

2.2 设置用户自定义定时任务

vi /etc/crontab

在最后添加:

59 * * * * root /opt/bcp/cutLog.sh       (这样就是每小时59分的时候执行一次命令脚本)

2.3保存生效

加载任务,使之生效:crontab /etc/crontab

查看任务:crontab -l

上一篇:auth 认证模块


下一篇:P5446 [THUPC2018]绿绿和串串 题解