Shell脚本实现nginx日志按日期定时切割和定时清理

原创作者:运维工程师 林琪

此脚本用于实现nginx日志按天定时切割和定时清理

  1. 脚本内容:(保留30天日志)
#!/bin/bash
LOG_PATH=/usr/local/nginx/logs/
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
PID=/var/run/nginx.pid
SAVETIME=30
mv ${LOG_PATH}access.log ${LOG_PATH}access-${YESTERDAY}.log
mv ${LOG_PATH}error.log ${LOG_PATH}error-${YESTERDAY}.log
find ${LOG_PATH} -mtime +${SAVETIME} -name *.log |xargs rm -rf {}
kill -USR1 `cat ${PID}`
  1. 脚本内容:(不做日志清理)
#!/bin/bash
LOG_PATH=/usr/local/nginx/logs/
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
PID=/var/run/nginx.pid
mv ${LOG_PATH}access.log ${LOG_PATH}access-${YESTERDAY}.log
mv ${LOG_PATH}error.log ${LOG_PATH}error-${YESTERDAY}.log
kill -USR1 `cat ${PID}`
  1. 设置定时任务
    crontab -e 编辑定时任务
0 0 * * * bash /usr/local/nginx/nginx-log.sh

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>